我目前正在寻找在Node js中进行聚合的方法。我试图做$ lts,$ gte和其他但我想知道这些是否都归类为聚合。如果没有,请你劝我一点。以下是我所拥有的。我可以举例说明如何进行$ sum或$ average的汇总。
$ GTE
db.contact.find("machine_unit" : {$gte:5}}, function(err,meibanlist){
if (err || !meibanlist ) console.log("Record is not found");
else meibanlist.forEach (function(machine_unit){
console.log(machine_unit);
});
});
答案 0 :(得分:1)
以下示例演示了node.js express app中的聚合操作,其中REST API端点返回聚合中的文档列表,该列表计算单个 $group
中的平均值和文档数强>管道。
聚合操作使用 aggregate()
函数,该函数接受由数组表示的管道,将machine_Id
键上集合中的所有文档分组并返回总数每组的文档数量以及平均数量(即,如果文档具有amount
字段):
app.get('/meibanlist/machines', function (req, res) {
db.meibanlist.aggregate([
{
"$group": {
"_id": "$machine_Id",
"count": { "$sum": 1 },
"average": { "$avg": "$amount" }
}
}
], function (err, result) {
console.log(result);
res.json(result);
});
});