十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
使用aggregate进行分组时,多个分组条件,如下
创新互联长期为上千家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为濉溪企业提供专业的成都做网站、网站设计,濉溪网站改版等技术服务。拥有十载丰富建站经验和众多成功案例,为您定制开发。
原生sql:
db.test.aggregate(
{
$group:{
_id:{name:'$name',pro:'$pro},
total:{$sum:'$num'}
}
},
{
$project:{
total:1
}
}
)
在java中对应如下:
//按照subjname和province进行分组 DBObject groupFields = new BasicDBObject("_id", new BasicDBObject("subjname", "$subjects.name").append("province", "$province")); //继续添加sum,avg等其他operation groupFields.put("AvgScore", new BasicDBObject("$avg", "$subjects.scores"));