Mongodb $sample不返回指定数量的文档
从 $sample 3.2版中的新版本 从输入中随机选择指定数量的文档Mongodb $sample不返回指定数量的文档,mongodb,Mongodb,从 $sample 3.2版中的新版本 从输入中随机选择指定数量的文档 >db.version() 3.4.3 >db.docs.count({'tag':'Foo'}) 27659 >db.docs.aggregate([ {$sample:{'size':10}, {$match:{'tag':'Foo'}}, ])//聚合管道进入每个阶段,并将结果传递到下一阶段。就你而言: 您首先随机获得10个示例文档,然后从匹配查询中筛选这10个文档。因此,您将得到10的随机数 首先应该有匹配查询,然后
>db.version()
3.4.3
>db.docs.count({'tag':'Foo'})
27659
>db.docs.aggregate([
{$sample:{'size':10},
{$match:{'tag':'Foo'}},
])//聚合管道进入每个阶段,并将结果传递到下一阶段。就你而言:
您首先随机获得10个示例文档,然后从匹配查询中筛选这10个文档。因此,您将得到10的随机数
首先应该有匹配查询,然后是示例
db.docs.aggregate([
{$match: {'tag': 'Foo'}},
{$sample: {'size': 10}}
]);
另外,要获得10个示例文档,至少应该有10个文档与匹配查询匹配。否则它将小于10,所以如果它发生,不要担心
db.docs.aggregate([
{$match: {'tag': 'Foo'}},
{$sample: {'size': 10}}
]);