MongoDB 2.6 $ elemMatch运算符搜索值在数组中没有$ eq运算符

时间:2015-12-01 10:55:24

标签: javascript node.js mongodb

我有一个请求要让所有在数组中都有指定objectId的用户。

我有以下要求:

var query = {
  'arrayOfIds': { $elemMatch: { $eq: id } },
};

这在mongodb 3.0中完美无缺。

但是在mongodb 2.6中没有$ eq运算符。我必须在mongodb 2.6上部署。所以我的问题是:

如何在mongodb 2.6下使用$ eq运算符执行相同的操作?

2 个答案:

答案 0 :(得分:1)

这可能和你一样复杂。

您只需通过

匹配id的数组
db.collection.find({ "yourArray": idToFind})

将返回yourArray包含idToFind的所有文档。

答案 1 :(得分:-1)

var query = {
  'arrayOfIds._id': id,
};

请尝试这个!!