mongodb 聚合

Posted 喻聪

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mongodb 聚合相关的知识,希望对你有一定的参考价值。

(1)将author从每个文档中投射出来

{"$project":{"author":1}}

(2)将作者按照名字排序,某个作者的名字出现一次,就会对这个作者的"count"加1
{"$group":{"_id":"$author","count":{"$sum":1}}}

(3)将作者按照名字出现的次数降序排列

{"$sort":{"count":-1}}

 

(4) 将返回结果限制为前5个

{"$limit":5}

 

db.articles.aggregate({"$project":{"author":1}},

  {"$group":{"_id":"$author","count":{"$sum":1}}},

  {"$sort":{"count":-1}},

  {"$limit":5})

 

 

db.requisition.aggregate({"$project":{"uid":1}})
db.requisition.aggregate({"$project":{"uid":1}},{"$group":{"_id":"$uid","count":{"$sum":1}}})
db.requisition.aggregate({"$project":{"uid":1}},{"$group":{"_id":"$uid","count":{"$sum":1}}},{"$sort":{"count":-1}},{"$limit":3})

 

 

pipeline 管道

filtering 筛选

projectiong 投射

grouping 分组

sort 排序

limiting 限制

skipping 跳过








以上是关于mongodb 聚合的主要内容,如果未能解决你的问题,请参考以下文章

MongoDB 聚合

Mongodb中数据聚合之聚合管道aggregate

mongodb Aggregation聚合操作之$bucket

mongodb Aggregation聚合操作之$sort

MongoDB基础教程系列--第七篇 MongoDB 聚合管道

MongoDB聚合操作总结