繁体   English   中英

在MongoDB中查找具有字符串ID数组的文档

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM