SQL语句中使用Group by

参考经典文章:https://blog.csdn.net/liu_shi_jun/article/details/51329472

1.group by 分组 ,每一组数据只有一行,如果group by col1,col2  即根据两个字段进行分组,那么会对这两列进行排列组合,每一行都是唯一不重复的一组

2.分组的数据里面 可以用聚合函数 如 COUNT 、SUM进行统计,不能在select中写一个不在分组里面的字段,因为1组数据只有一行,但是这个未作为分组条件的字段可能有多个值,这样就不知道展示哪个值了。

3.where在分组前使用,对所有数据进行过滤;having在分组后使用 对组进行过滤。

 

查询Score表中 班级号码 以3开头,有20名以上学生有成绩 的所有学生 的平均成绩

select avg(StudentScore) from Score where CId like '3%' group by CId having COUNT(*)>20

posted @ 2018-08-03 14:35  当年在远方  阅读(1939)  评论(0编辑  收藏  举报