【发布时间】:2016-02-14 12:52:03
【问题描述】:
我想在 mongoDB 中编写一个查询,我想在其中查找我的数组的哪些元素存在于数据库数组“upvotes”中,我的查询如下所示
userupvotesmodel.findOne({mobile_no: "1234567890", upvotes : { $in : ["aa", "bdnvh", "563fa4408d88ea6c13c7abba", "djfufhgj", "5625bd9dbe545d2412d4ae62", "fjjshddhjfn", "djfhudh", "jfhshnffj", "sjdhfkskajdk"] } }, function(err, docs) {
if (err) {
console.log('Error Finding query results');
console.log(err);
res.json({success: 0, message : err});
return next(err);
} else {
if (docs) {
console.log('2 mins', currentdate.getMinutes());
console.log('2 secs', currentdate.getSeconds());
console.log('docs', docs);
}
}
});
现在对于上面的查询,如果我的数组的任何单个值存在于数据库中,那么它会发送整个 upvotes 数组,但我无法找出数据库中存在哪些元素,例如“aa”、“bdnvh”等我编写了一个查询来了解数据库中存在哪些元素。
我想通过查询每个元素在一个查询中找到它;我知道我可以做到这一点,但我想在任何可能的单个 mongoDB 查询中做到这一点。
【问题讨论】:
-
map-reduce 怎么样?
-
@stdob--你能在这里给我任何使用 map-reduce 的链接吗??
标签: arrays node.js mongodb mongoose