带有WHERE语句的MongoDB随机文档

时间:2017-05-16 10:48:40

标签: mongodb mongoose

我是MongoDB的新手,我遇到了问题。 我想选择一个随机文件但有条件。 在SQL中我会做这样的事情:

SELECT * FROM challenges
WHERE level = 1
ORDER BY RAND()
LIMIT 1

现在我需要在MongoDB中执行此操作,但我只能选择随机值

Challenge.aggregate({
        $sample: {size:1}
},

如何添加WHERE语句,我只在challenge.find中看到它,但我已经在聚合了。

任何帮助都会受到高度关注。

1 个答案:

答案 0 :(得分:1)

 Challenge.aggregate([
 {
   $match:{
     field1: condition1,
     field2: condition2
   }
 },
 {
    $sample: {size:1}
 }
])