当前位置:  开发笔记 > 编程语言 > 正文

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

如何解决《在MongoDB中查找具有字符串ID数组的文档》经验,为你挑选了1个好方法。

我有一个ID的字符串数组,我想与find函数一起使用。

db.companies.find( { _id : { $in : arr} });

arr 看起来像这样

[ '563a2c60b511b7ff2c61e938', '563a2c60b511b7ff2c61e8b7' ];

我从不接受数组的文档中看到ObjectID()。如何搜索具有此数组的文档列表?我是否必须重新创建数组,以便所有元素都是ObjectID?



1> dreyescat..:

一种选择是使用该map函数ObjectId从字符串ID列表中获取的列表:

arr.map(function (id) {
  return ObjectId(id);
})

插入您的查询:

db.companies.find({_id: { $in: arr.map(function (id) {return ObjectId(id);})}})

推荐阅读
TXCWB_523
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有