根据条件获取MongoDB数据库中的随机条数的数据

本文重点:mongoose的aggregate聚合管道,原理就不讲了,直接讲怎么获取随机数据

官方地址:http://www.mongoosejs.net/docs/api.html#Aggregate

有三种写法:

Activity.aggregate([
    {
        $match: {
            'act_status': '1',
            'verifycode': 1
        }
    }
 ]).sample(6);

第二种写法:

Activity.aggregate([
    {
        $match: {
            'act_status': '1',
            'verifycode': 1
        }
    },{
        $sample: {
            size: 6
        }
    }
]);

$match 里面是数据筛选条件,$sample 是需要获取的随机数据条数

第三种写法(更简洁):

Activity.aggregate().match({
    'act_status': '1',
    'verifycode': 1
}).sample(6);
posted @ 2021-07-05 17:10  _keyon  阅读(1464)  评论(0编辑  收藏  举报