查找集合中某个字段的最大出现次数?

时间:2018-08-01 17:26:58

标签: mongodb aggregation-framework

我一直在寻找站点,尽管很傻,但没有找到解决方案。 具有以下示例集合:

window.open("data:application/pdf;base64,JVBERi0x..");

如何获取在a内出现次数最多的字符串? 谢谢您的帮助。 问候。

1 个答案:

答案 0 :(得分:1)

您可以使用以下聚合查询。

$unwind将数组简化为单个字符串,然后用$sortbyCount进行分组和计数,并对出现的事件进行降序排序。

$limit获取出现次数最多的值。

db.colname.aggregate([
  {"$unwind":"$a"},
  {"$sortByCount":"$a"},
  {"$limit":1}
])