[英]How to find data within embedded documents array using id mongodb?
[英]Find documents with array of string ID's in MongoDB
我有一个ID的字符串数组,我想与find函数一起使用。
db.companies.find( { _id : { $in : arr} });
arr
看起来像这样,
[ '563a2c60b511b7ff2c61e938', '563a2c60b511b7ff2c61e8b7' ];
我从文档中看到ObjectID()
不接受数组。 如何搜索具有此数组的文档列表? 我是否必须重新创建数组,以便所有元素都是ObjectID?
一种选择是使用map
函数从字符串ID列表中获取ObjectId
的列表:
arr.map(function (id) {
return ObjectId(id);
})
插入您的查询:
db.companies.find({_id: { $in: arr.map(function (id) {return ObjectId(id);})}})
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.