GROUP BY和HAVING用法介绍

一、group by用法

“group by”就是对数据进行分组,然后针对分组后的数据进行处理。

如:
在这里插入图片描述

select C, sum(Number) as CTotal

from A

group by C;

返回结果实际上就是根据C进行分类汇总。

二、group by 和 having

1、having必须和group by一起用,且在group by后面,但是group可以单独用来分组

2、group by、having、order by的使用顺序:group by 、having、order by

SELECT *|字段列表 [as 别名] FROM 表名 [WHERE 子句] [GROUP BY 子句][HAVING 子句][ORDER BY 子句][LIMIT 子句]

3、having是在分好组后找出特定的分组,通常是以筛选聚合函数的结果,如sum(a) > 100等

4、分组函数常用到的聚合函数:

MIN 最小值:分组之后对组内某字段求最小值

MAX 最大值:分组之后对组内某字段求最大值

SUM 求和:分组之后对组内某字段求和

AVG 求平均:分组之后对组内某字段求平均值

COUNT 计数::分组之后对组内某字段计数

  • 3
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
group by和having是在SQL中用于对查询结果进行分组和筛选的关键字。 group by用于将查询结果按照指定的列进行分组,以便对每个分组进行聚合操作。通常与聚合函数(如sum、avg、count、min、max)一起使用,可以得到每个分组的聚合结果。例如,我们可以使用group by来计算每个学生的课程数,通过联合使用count函数和group by语句,以学号为分组依据,得到每个学号对应的课程数。 having用于在分组后对分组结果进行筛选。它可以在group by之后使用,用于过滤满足特定条件的分组。与where不同的是,having可以使用聚合函数进行筛选。例如,我们可以使用having来筛选出考试时间在2022-09-07之前,且最高分数在70以上的每门学科。 总结起来,group by用于分组,having用于筛选分组结果。group by和having通常一起使用,以便对分组后的结果进行更精细的筛选和聚合操作。 #### 引用[.reference_title] - *1* [GROUP BY和HAVING用法介绍](https://blog.csdn.net/Shiny0815/article/details/108490810)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [Group By 和having用法](https://blog.csdn.net/qq_50652600/article/details/127067655)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [group by和having用法](https://blog.csdn.net/weixin_43779793/article/details/104892991)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值