分组
使用GROUP BY 子句数据分组
使用HAVING 子句过滤分组结果集
分组函数作用于一组数据,并对一组数据返回一个值。如:AVG、COUNT、MAX、MIN、SUM操作的是一组数据,返回一个结果。
分组函数我的理解是 对相同的一组数据 取 一个值,
分组中可以继续分组, 比如对小学进行分组,分组年级,得到(一)(二)(三)年级的分组,然后在对(一)年级的班级继续分组,(一年一)(一年二)(一年三),然后可以对(一年一)班的人数进行统计,最高分数,等等得到一个值,
在或者对(一年一)班的男女再次分组,这样就得到了 (一年一班男)(一年一班女)两组数据,对(一年一班男)男生个数统计,男生平均身高统计,或者最大年龄最小年龄等等
001 小明 男 7岁 1.5m 1年级 1班 99分
002 小红 女 6岁 1.3m 1年级 1班 80分
003 小张 男 7岁 1.1m 2年级 2班 88分
004 小文 男 6岁 1.1m 2年级 2班 77分
005 小花 女 7岁 1.3m 2年级 2班 0分
select grade,class, MAX(math) from student group by grade,class
select grade,class, sex,MAX(age) from student group by grade,class ,sex
注意: 在SELECT 列表中所有没有包含在组函数中的列,都必须在group by的后面出现。
使用 HAVING 过滤分组:
1. 行已经被分组。
2. 使用了组函数。
3. 满足HAVING 子句中条件的分组将被显示。
l 不能在 WHERE 子句中使用组函数(注意)。
l 可以在 HAVING 子句中使用组函数。
有事等会写
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义