96818 发表于 2018-10-26 11:02:45

MongoDB aggregate聚合

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);    //如此同样可以
  



页: [1]
查看完整版本: MongoDB aggregate聚合