2014-10-10 4 views
0

응용 프로그램에서 데이터베이스 호출 수를 최소화하려고합니다.MongoDB/MongoEngine : 1 쿼리에서 2 카운트 받기

한 번의 호출로 두 쿼리를 완료 할 수 있습니까?

system_0 = System.objects(platform_id=platform_id, type=0).count() 
system_1 = System.objects(platform_id=platform_id, type=1).count() 

답변

0

내가 mongoengine 뭔지 모르겠지만, 난 당신이 당신을 위해 적절한 무엇인지에 내 몽고 쉘 대답을 번역 할 수있을 것입니다 생각합니다. 예, 집계를 통해 달성 할 수 있습니다. 예를 들어 :

db.collection.aggregate([{ 
    $match : { platform_id : ... } 
}, { 
    $group: { 
     _id: "$type", 
     count: { $sum: 1 } 
    } 
}]); 

는 0, 1보다 더 많은 종류가있는 경우, 당신은뿐만 아니라 $match에서 그들을 제외 할 수 있습니다.