MongoDB 相当于 SQL COUNT GROUP BY
Posted
技术标签:
【中文标题】MongoDB 相当于 SQL COUNT GROUP BY【英文标题】:MongoDB equivalent of SQL COUNT GROUP BY 【发布时间】:2014-12-16 16:37:48 【问题描述】:一直在阅读 mongodb 聚合和组文档,但我仍然不清楚。
考虑带有文档的集合:
一:1, 乙:0
一:1, 乙:1
a2, 乙:2
一个:3, 乙:3
我想计算 a 的每个值的文档数并按计数排序。
在关系样式中,它看起来像这样:
SELECT COUNT(distinct b) AS total 来自 example_table 按一个分组 按总 DESC 排序;
关于如何在 mongo 中执行此操作的任何建议?
【问题讨论】:
【参考方案1】:您首先在_id:"$a"
上使用$group
和$sum:1
(这基本上是您对不同a 的计数),然后在总和上使用sort
。
【讨论】:
db.so.aggregate([ $group : _id :'$a', count: $sum: 1 ],$sort:count: -1 )以上是关于MongoDB 相当于 SQL COUNT GROUP BY的主要内容,如果未能解决你的问题,请参考以下文章