2012-04-02 8 views
0

では動作しません。この:

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

が、リクエストによって返されたカーソルの数が0 ですが、私はこの要求を行うとき:

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

をそれは私に良いオブジェクトを返します

なぜ動作しないのですか?

答えて

7

このクエリは意味をなさない。一意の単一値の_idフィールドがすべての2つの別個の値,を持つように要求しています。

私はあなたが$inをしたいと思う:

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

ああそれは本当です!ありがとう – kschaeffler

関連する問題