欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

group by

程序员文章站 2022-03-09 08:41:12
...

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

在select指定的字段要么就要包含在Group By语句的后面,作为分组的依据;要么就要被包含在聚合函数中。
group by
1.从表table中查找所有name,并按name进行分组。分组就是将一个“数据集”划分成若干个“小区域”,然后针对若干个“小区域”进行数据处理。

select name from stu GROUP BY name 

group by

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

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

group by

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

select name from stu where score > 50 GROUP BY name 

group by

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

select * from stu where name in (select name from stu group by name having min(score)>60)
相关标签: 数据库设计