【问题标题】:Group by mongo Shell蒙戈壳牌集团
【发布时间】:2013-09-20 16:49:07
【问题描述】:

我有一个集合,其中每个文档都有用户相关的详细信息。 用户 ID:1001,abc:1 用户名:1​​001,abc:9 用户 ID:1002,abc:1 用户名:1001,abc:3

类似的东西。 我想计算出现次数最多的 userId。 我需要在 Mongo shell 上执行此操作。

有什么想法吗?

【问题讨论】:

  • 你用谷歌搜索过吗?
  • 当然。这不是一个直截了当的答案。因此将其发布在这里。我想要按 + 最大计数分组。
  • 这是文档中经常提到的最基本的聚合示例,以及本网站上的许多问题。
  • 是的。我现在明白了,我如何在这个用例中使用聚合。

标签: mongodb mongo-shell


【解决方案1】:

查看mongo的aggregation framework。对于答案,您可以使用 $group 运算符按用户 ID 分组并根据计数对其进行排序。像这样的:

假设集合名称是 test:

db.test.aggregate([{"$group":{"_id":"$userid","occurence":{"$sum":1}}},{$sort:{"occurence": -1}}])

【讨论】:

  • 我认为我的mongo版本不支持聚合。
猜你喜欢
  • 2015-03-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-08-21
  • 2014-08-11
相关资源
最近更新 更多