我正在寻找一个使用节点的简单随机样本。
在控制台中,它与 db.commands.aggregate({$sample: { size: 1 }})
db.commands.aggregate({$sample: { size: 1 }})
但当我 console.log 使用node返回的结果返回aggregationcursor对象。
console.log
commands.aggregate( [{ $sample: { size: 1 } }], function(err, result) { console.log(result); client.close(); });
显然,aggregate返回一个数组,并且可以使用 forEach .
forEach
这是一个对我有效的解决方案,最终将单个文档作为一个对象返回。
commands.aggregate([{ $sample: { size: 1 } }]) .forEach((doc) => {console.log(doc)} , (err) => {console.log(err);} );