0

我检索了一个 ObjectId 列表,我想使用参数 $all 检索我的 mongo 数据库中的所有对象

我正在使用 pymongo,我的请求如下所示:

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

但是请求返回的游标计数为 0 但是当我执行此请求时:

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

它还给我一个好对象

有谁知道为什么它不起作用?

4

1 回答 1

9

该查询没有意义。您要求唯一和单值_id字段同时具有所有两个不同的值。

我想你想要$in

db.database.collection.find({ "_id" : { 
   "$in" : 
     [ObjectId('4ee371837c93dd33dc000003'),
      ObjectId('4eef9f647c93dd1a90000000')] } })
于 2012-04-02T13:39:50.257 回答