mongodb[八]聚合查询、统计、分组、平均值、最大值、最小值
2017-05-05 10:34
567 查看
介绍:
数据统计是每个数据库必不可少,mongodb也提供了基础聚合函数的支持,增强对数据的操作
语法:
aggregate() 关键方法函数,如果进行统计,就必须使用另外一个组函数进行计算统计
关键字:
语法:aggregate([{$group:{_id:"$fieldName",alias:{分组函数:"$fieldName"}}}]) 都需要在分组的情况下使用,优先使用指定条件分组,然后再统计,
其中_id:指分组的字段,字段名前面必须要使用$来开头,否则mongodb不能识别你的字段,将会报错
alias:统计后显示字段的名称,起一个名字作为统计结果字段
1、$sum分组求和
2、$avg分组平均值
3、$min分组最小值
4、$max分组最大值
5、$first分组第一条记录
6、$last分组最后一天记录
实例:
1、分组统计
db.user.aggregate([{$group:{_id:"$name",namecount:{$sum:1}}}]);
2、分组平均值
db.user.aggregate([{$group:{_id:"$name",nameAvg:{$avg:"$age"}}}]);
3、分组最小值和最大致都是类似,此处就不再演示了,只演示一个最小值的
db.user.aggregate([{$group:{_id:"$name",nameAvg:{$min:"$age"}}}]);
其他函数再次就不再演示,其他方式可以自行运行,有问题可以留言,我会第一时间进行回复,有错误地方欢迎大家指正
数据统计是每个数据库必不可少,mongodb也提供了基础聚合函数的支持,增强对数据的操作
语法:
aggregate() 关键方法函数,如果进行统计,就必须使用另外一个组函数进行计算统计
关键字:
语法:aggregate([{$group:{_id:"$fieldName",alias:{分组函数:"$fieldName"}}}]) 都需要在分组的情况下使用,优先使用指定条件分组,然后再统计,
其中_id:指分组的字段,字段名前面必须要使用$来开头,否则mongodb不能识别你的字段,将会报错
alias:统计后显示字段的名称,起一个名字作为统计结果字段
1、$sum分组求和
2、$avg分组平均值
3、$min分组最小值
4、$max分组最大值
5、$first分组第一条记录
6、$last分组最后一天记录
实例:
1、分组统计
db.user.aggregate([{$group:{_id:"$name",namecount:{$sum:1}}}]);
2、分组平均值
db.user.aggregate([{$group:{_id:"$name",nameAvg:{$avg:"$age"}}}]);
3、分组最小值和最大致都是类似,此处就不再演示了,只演示一个最小值的
db.user.aggregate([{$group:{_id:"$name",nameAvg:{$min:"$age"}}}]);
其他函数再次就不再演示,其他方式可以自行运行,有问题可以留言,我会第一时间进行回复,有错误地方欢迎大家指正
相关文章推荐
- spark 按照key 分组 然后统计每个key对应的最大、最小、平均值思路——使用groupby,或者reduceby
- Linq 求和,求平均值,求最大,求最小,分组,计数.....
- oracle分组统计查询之后,获取数量最大的记录
- Solr.NET快速入门(六)【聚合统计,分组查询】
- 分组查询最大最小记录的方法
- SQL按天进行分组查询最大值和最小值
- mongodb 聚合查询每天统计
- 查询多月份中某一字段的最小值,最大值,平均值,其中每个月为一张表。
- java mongodb聚合统计查询,比较两个字段
- 统计,求指定时段内的平均值、最大(最小)值,以及最值出现的时刻
- mongodb 分组查询统计去掉重复的记录
- Linq 求和,求平均值,求最大,求最小,分组,计数
- 统计 最小 、最大、平均值
- MongoDB中复杂的分组查询统计(MapReduce)
- 关于DataTable字段列求平均值,最大值,最小值,统计和的东东,为Null情况
- sql分组查询最大值或最小值
- MongoDB中的一个分组统计的查询(Group ... Distinct)
- Solr.NET快速入门(五)【聚合统计,分组查询】
- 在SPRING DATA MONGODB中使用聚合统计查询
- C# MongoDB 查询,分组,聚合,排序,条件,分页