mongodb 聚合查询

操做符介绍:sql

$project:包含、排除、重命名和显示字段mongodb

$match:查询,须要同find()同样的参数数组

$limit:限制结果数量sqlserver

$skip:忽略结果的数量spa

$sort:按照给定的字段排序结果server

$group:按照给定表达式组合结果排序

$unwind:分割嵌入数组到本身顶层文件ip

文档: MongoDB 官方 aggregate 说明 。文档

相关使用:get

db.collection.aggregate([array]);

array但是是任何一个或多个操做符。

group和match的用法,使用过sqlserver,group的用法很好理解,根据指定列进行分组统计,能够统计分组的数量,也能统计分组中的和或者平均值等。

group以前的match,是对源数据进行查询,group以后的match是对group以后的数据进行筛选;


本身的小例子:统计sid是4的按year分组统计数量
db
.wd_paper_ei.aggregate({$match:{"affInfo.affiliationJGList.sid":4}},{$group:{"_id":"$year","number":{$sum:1}}},{$match:{"_id":{$in:["2006","2007","2008","2009","2010","2011","2012","2013","2014","2015","2016","2017"]}}},{$sort:{"_id":1}});
相关文章
相关标签/搜索