- 按 name,category,value三个字段进行分组,计算(count)每组的数量
db.getCollection("tools").aggregate(
[
{
"$group" : {
"_id" : {
"name" : "$name",
"category" : "$category",
"value" : "$value"
},
"COUNT(*)" : {
"$sum" : NumberInt(1)
}
}
},
{
"$project" : {
"name" : "$_id.name",
"category" : "$_id.category",
"value" : "$_id.value",
"COUNT(*)" : "$COUNT(*)",
"_id" : NumberInt(0)
}
}
],
{
"allowDiskUse" : true
}
);
{
"name" : "盾",
"category" : "防具",
"value" : NumberInt(11),
"COUNT(*)" : NumberInt(1)
}
{
"name" : "披风",
"category" : "服装",
"value" : NumberInt(9),
"COUNT(*)" : NumberInt(1)
}
{
"name" : "剑",
"category" : "武器",
"value" : NumberInt(11),
"COUNT(*)" : NumberInt(1)
}
网友评论