2012-04-02 2 views
0

나는 ObjectId가의 목록을 검색하고 난 매개 변수 $ 모든

를 사용하여 내가 pymongo을 사용하고 같은 내 요청 볼거야 내 몽고 데이터베이스에있는 모든 개체를 검색 할 이 :

db.database.collection.find({ "_id" : { "$all" : [ObjectId('4ee371837c93dd33dc000003'),ObjectId('4eef9f647c93dd1a90000000')] } }) 

하지만 요청에 의해 반환 된 커서의 수는 0 하지만 난이 요청을 수행 할 때

db.database.collection.find_one({ "_id" : ObjectId('4ee371837c93dd33dc000003')}) 

를 그것은 나에게 좋은 개체를 반환

누구나 왜 작동하지 않는지 알 수 있습니까?

답변

7

이 쿼리는 의미가 없습니다. 고유 한 단일 값 _id 필드가 인 모든은 두 개의 고유 한 값인 을 동시에 요구합니다..

나는 당신이 $in을 원한다고 생각 :

db.database.collection.find({ "_id" : { 
    "$in" : 
    [ObjectId('4ee371837c93dd33dc000003'), 
     ObjectId('4eef9f647c93dd1a90000000')] } }) 
+0

아, 네 그게 사실! 감사 – kschaeffler

관련 문제