|
BasicDBObject fields = new BasicDBObject("email", 1);
DBObject project = new BasicDBObject("$project", fields );
BasicDBObject groupFilters = new BasicDBObject("_id", "$name");
groupFilters.put("sumage", new BasicDBObject("$sum", "$age"));
groupFilters.put("totalage", new BasicDBObject("$avg", "$age"));
BasicDBObject group = new BasicDBObject("$group", groupFilters);
AggregationOutput aggrresult = this.mongoTemplate.getCollection("test").aggregate(matchOpt,project, group); //如果还有sort,skip等则继续在后面追加
//或者可以将所有的operate加入list中,如下
List list = new ArrayList();
list.add(group);
list.add(project );
AggregationOutput aggrresult = this.mongoTemplate.getCollection("test").aggregate(list); //如此同样可以
|
|
|