我有一个包含多个文档的集合,每个文档都有一个不唯一的“eID”字段。我想获得所有不同的“eID”的计数。
例如:如果有5个文档的'eID'= ObjectID(123)和2个文档的'eID'= ObjectID(321),我想输出以下内容:
{
ObjectID(123): 5,
ObjectID(321): 2
}
我不知道是否可以在同一查询中完成此操作,但是在知道最常见的eID是什么之后,我想使用ObjectID来获取引用的文档
Mongoose 版本3.8.8
最佳答案
$ status是集合的特定字段,我需要计算元素的不同数量。
var agg = [
{$group: {
_id: "$status",
total: {$sum: 1}
}}
];
model.Site.aggregate(agg, function(err, logs){
if (err) { return res.json(err); }
return res.json(logs);
});
//output
[
{
"_id": "plan",
"total": 3
},
{
"_id": "complete",
"total": 4
},
{
"_id": "hault",
"total": 2
},
{
"_id": "incomplete",
"total": 4
}
]