mongodb aggregate多个分组条件

使用aggregate进行分组时,多个分组条件,如下


原生sql:


 db.test.aggregate(

     {

          $group:{

                _id:{name:'$name',pro:'$pro},

                total:{$sum:'$num'}

          }

      },

     {

         $project:{

             total:1

        }

    }

)


在java中对应如下:

    

1
2
3
4
//按照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"));





      本文转自布拉君君 51CTO博客,原文链接:http://blog.51cto.com/5148737/1638112,如需转载请自行联系原作者





上一篇:深入Java虚拟机:多态性实现机制--动态单分派和静态多分派


下一篇:SAP CDS view自学教程之八:SAP Fiori Elements里不同类型的annotation