在mongodb中查找具有ID数组的数据?

时间:2018-08-13 14:29:37

标签: mongodb

我有另一个示例的数组列表,但这对我不起作用,可能是因为我需要使用ObjectId()',但我也不知道如何解析该数组,我也不会不知道是否可能仅获得一次参数(用户名)而不是整个数组?

代码是这样的:

var list =      ["5883d387971bb840b7399130","5883d389971bb840b7399131","5883d38a971bb840b7399132"]
.find({ _id: {$in : list}},{username:1})

您能帮我说我如何创建查询吗?谢谢。

1 个答案:

答案 0 :(得分:1)

您的查询是正确的,只是您需要使用地图将ID包裹在ObjectId中。

var ObjectId = require('mongodb').ObjectID

var list = ["5883d387971bb840b7399130","5883d389971bb840b7399131","5883d38a971bb840b7399132"]

db.collectionName('newCollection').find({ _id: {$in : list.map( (id) =>  ObjectId(id))}}, {userName:1, _id:0})