MongoDB聚合查询

MongoDB聚合查询

概念

聚合查询
就是把数据聚起来,经行统计

语法

db.集合名称.aggregate([
		{管道:{表达式}}
		/*
		常用管道见下
		*/
])
//

常用管道
$group 将集合中的文档分组,用于统计结果
$match 过滤数据,只要输出符合条件的文档
$sort 聚合数据进一步排序
$skip 跳过指定文档数
$limit 限制集合数据返回文档数
、、、、、

常用表达式

$sum 总和 $sum:1同count表示统计
$avg 平均
$min 最小值
$max 最大值

例题

db.集合名称.aggregate([
{管道:{表达式}}
])

  • 统计男生女生的总年龄
db.c1.aggregate([
	{
		$group:{
			_id:"$sex",
			rs:{$sum:"$age"}
		}
	}
])
  • 统计男生女生的总人数
db.c1.aggregate([
	{
		$group:{
			_id:"$sex",
			rs:{$sum:1}
		}
	}
])
  • 求学生年龄的平均值
db.c1.aggregate([
	{
		$group:{
			_id:null,
			total_num:{$sum:1},
			total_avg:{$avg:"$age"}
		}
	}
])
  • 查询男生女生的人数按人数升序
db.c1.aggregate([
	{
		$group:{
			_id:"$sex",
			rs:{$sum:1},
		}
	},
	{
		$sort:{
			_id:1
		}
	}
])
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值