Login
网站首页 > 文章中心 > 其它

MongoDB教程之聚合_count、distinct和group)_mongodb distinct count

作者:小编 更新时间:2023-09-22 13:53:14 浏览量:407人看过

count操作

count操作用于返回一个集合中文档的数量.下面是count操作函数的基本语法:


db.collection_name.count()



db.students.count()


如果想要统计具有特定条件的文档数量,可以在count方法中传入条件:


db.students.count({age: {$gt: 20}})


distinct操作

distinct操作用于返回一个集合中的不同值.下面是distinct操作函数的基本语法:


db.collection_name.distinct(field_name)



db.students.distinct("age")


这个命令将会返回所有不同年龄的学生.

group操作

group操作用于将一个集合中的文档按照一个或多个指定条件进行分组,并对每个分组进行聚合操作.下面是group操作函数的基本语法:


db.collection_name.group({
key: {'field1': true, 'field2': true},
reduce: function(obj, prev) {...},
initial: {...},
})


其中,key属性用于指定按照哪些字段进行分组;reduce属性用于指定聚合操作,它是一个匿名函数,接受两个参数obj和prev,obj表示正在处理的文档,prev表示当前分组的结果;initial属性用于指定聚合结果的初始值.


db.scores.group({
key: {class: true},
initial: {count: 0, total_score: 0},
reduce: function(obj, prev){
    prev.count◆◆;
    prev.total_score ◆= obj.score;
},
finalize: function(prev){
    prev.avg_score = prev.total_score / prev.count;
}
})


这个示例代码将会按照班级分组,并计算每个班级的平均分.其中,key属性指定了按照班级分组,reduce属性中定义了对每个班级进行计数和总分求和,finalize属性用于计算平均分.

小结

以上就是土嘎嘎小编为大家整理的MongoDB教程之聚合_count、distinct和group)相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!

版权声明:倡导尊重与保护知识产权。未经许可,任何人不得复制、转载、或以其他方式使用本站《原创》内容,违者将追究其法律责任。本站文章内容,部分图片来源于网络,如有侵权,请联系我们修改或者删除处理。

编辑推荐

热门文章