group by
发布日期:2021-07-01 02:23:01 浏览次数:2 分类:技术文章

本文共 551 字,大约阅读时间需要 1 分钟。

having和where一样都是筛选条件的,where分组前筛选,having是分组后筛选

在select指定的字段要么就要包含在Group By语句的后面,作为分组的依据;要么就要被包含在聚合函数中。

在这里插入图片描述
1.从表table中查找所有name,并按name进行分组。分组就是将一个“数据集”划分成若干个“小区域”,然后针对若干个“小区域”进行数据处理。

select name from stu GROUP BY name

在这里插入图片描述

2.按name对表table进行分组后,查找最小score大于80分的name。一个name里面有很多门科目,每门科目的分数都要大于50分,即查询每门课程分数都大于50的学生姓名

select name from stu GROUP BY name having min(score) >50

在这里插入图片描述

3.查找只要有一门分数大于50的学生,按照name进行分组

select name from stu where score > 50 GROUP BY name

在这里插入图片描述

4.查询每门课程分数都大于60 的学生信息

select * from stu where name in (select name from stu group by name having min(score)>60)

转载地址:https://mapengsen.blog.csdn.net/article/details/108677747 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:group by配合“聚合函数”才有意义
下一篇:VARCHAR和CHAR类型使用场景

发表评论

最新留言

逛到本站,mark一下
[***.202.152.39]2024年04月15日 02时10分21秒