我试图最小化应用程序中的数据库调用次数。
是否可以在一次通话中完成这两个查询?
system_0 = System.objects(platform_id=platform_id, type=0).count()
system_1 = System.objects(platform_id=platform_id, type=1).count()
答案 0 :(得分:0)
我不知道什么是mongoengine,但我认为你能够将我的mongo shell答案翻译成适合你的东西。是的,您可以通过聚合实现它。例如:
db.collection.aggregate([{
$match : { platform_id : ... }
}, {
$group: {
_id: "$type",
count: { $sum: 1 }
}
}]);
如果您的类型多于0,1,则可以在$match
中排除它们。