db.collection.aggregate([
{$match:{day:'2019-03-20'}},
{$group:
{_id:
{pk:'$createSiteCode',pkName:"$createSiteCodeName"},
//计算数据总量,相当于num = num + 1
num:{$sum:1},
//计算item字段的总和, 相当于 items = items + item
items:{$sum:'$item'}
}
},
{$sort:{num:-1}},
{$limit:10}
])
就这么简单:
$match :条件查询
$group : 分组
_id : 以_id内的字段进行分组
$sum : 求和(以pk和pkName组合字段进行分组,算出该组内某一向的总和)
$sort : 排序 -1 倒叙 1 正序
$limit : 分页