我是MongoDb的新手,我有一个包含以下记录的MngoDB Collection。
Name Subject
AA A
AA B
AA A
AA C
AA A
BB A
BB B
BB B
CC A
CC C
DD C
使用上面的记录集我想获得以下输出
Name Subject Count
AA A 3
AA B 1
AA C 1
BB A 1
BB B 2
CC A 1
CC C 1
DD C 1
请帮助我解决问题
答案 0 :(得分:2)
您需要使用聚合框架。
db.collection.aggregate( [ { $group : { _id : {name:"$name"}, count: { $sum: 1 } } } ] );
更多详情:Clock here
答案 1 :(得分:1)
根据特定字段值汇总操作组文档并对组数据应用操作
请尝试执行以下查询作为替代解决方案
db.collection.aggregate(
// Pipeline
[
// Stage 1
{
$group: {
_id:{name:'$name',subject:'$subject'},
total:{$sum:1}
}
}
]
);
有关聚合的更多详细说明,请参阅以下网址
中提到的文档