mongodb中的$ all参数不适用于ObjectId列表

ksc*_*ler 0 mongodb pymongo object-identity

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

我正在使用pymongo,我的请求看起来像这样:

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

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

db.database.collection.find_one({ "_id" : ObjectId('4ee371837c93dd33dc000003')})
Run Code Online (Sandbox Code Playgroud)

它回报了我的好对象

任何人都知道它为什么不起作用?

Thi*_*ilo 7

那个查询没有意义.您所要求的独特和单值_id字段,让所有的两个不同的值的同时.

我想你想要$in:

db.database.collection.find({ "_id" : { 
   "$in" : 
     [ObjectId('4ee371837c93dd33dc000003'),
      ObjectId('4eef9f647c93dd1a90000000')] } })
Run Code Online (Sandbox Code Playgroud)