我有一个ObjectId的_id列表,我想要所有匹配这些ID的文档,是否有一种有效的方法可以在一个查询中找到这些对象?
答案 0 :(得分:1)
是的,使用$in
运算符。
http://docs.mongodb.org/manual/reference/operator/query/in/#op._S_in
使用示例:
var arr = [ObjectId("52b11a1a3055376e9e00003d"), ObjectId("52b11a1a3055376e9e00003d")]
db.collection.find({_id: {$in: arr}})
答案 1 :(得分:0)
$in
运算符采用一组参数,因此您要执行的操作是将列表中的所有ObjectId
值提供给:
var list = [ObjectId("53cf334bb3b0796e36d42184"),ObjectId("53cf3358b3b0796e36d42185")];
db.collection.find({ "_id": { "$in": list } })
答案 2 :(得分:0)
$ in运算符如下:
db.collection.find({_id: {$in : [ObjectId("505bd76785ebb509fc183733"), ObjectId("505bd76785ebb509fc183734")] }});