Mongoose:在限制中使用$ in运算符

时间:2015-03-04 10:53:18

标签: node.js mongodb mongoose

我在mongodb中有一组注释,我希望根据数组进行选择。我可以使用我要查询的offerId字段或_id的数组执行以下操作。

var offerIds = [123, 456, 789];
model.find({
    'offerId': { $in: offerIds }
}, function(err, docs){
     console.log(docs);
});

这可行,但是当我使用限制时,它会限制总数,而不是对数组中的每个查询应用限制。当我使用.limit(5)时,我期望发生的是返回5条评论,其中offerId == 123,5还有5条,其中offerId == 456,另外5条,其中offerId == 789。

相反,我得到5 ,所以如果offerId == 123有4条评论,那么offerId == 456只返回一个以使总数达到5。

我已在文档中读到有关$limit但我无法弄清楚在哪里使用它或让它工作。 谢谢你的帮助。

1 个答案:

答案 0 :(得分:0)

我建议你试试这个:

var offerIds = [123, 456, 789];
model.find({
    'offerId': { $in: offerIds }
}).limit(100).exec(function(err, docs){
   console.log(docs);
})