当前位置:  开发笔记 > 数据库 > 正文

MongoDB从所有文档计数和分组

如何解决《MongoDB从所有文档计数和分组》经验,为你挑选了1个好方法。

我需要在mongodb数据库中进行查询:

我需要在所有文档中获取最重复的作者字段,但是这个字段里面有一个数组文件.

{ _id:'1234567', 
date:'9/27/08 3:21', 
a_name:'name', 
a_nick:'nick', 
comments: [
{
body:"aa",
email:a@a.com,
author: "Author a"
},
{
body:"bb",
email:b@b.com,
author: "Author b"
},{
body:"cc",
email:c@c.com,
author: "Author c"
}
]} 

我想我需要使用聚合框架,但我不知道我可以使用的巫婆条款......任何人都可以帮助我吗?



1> Petros Tsial..:

您可以使用聚合框架的$unwind$group运算符

db..aggregate( 
   { $project: { 'comments.author':1 } }, 
   { $unwind: '$comments' }, 
   { $group: {_id: '$comments.author', cnt: { $sum:1 } } }, 
   { $sort: { cnt:-1 } }, 
   { $limit:1 } 
);

$project操作是可选的.

推荐阅读
周扒pi
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有