order by 和 group by 的区别
order by 和 group by的区别为:指代不同、侧重点不同、引证用法不同
一、指代不同
1、order by:排序依据。
2、group by:进行分组。
二、侧重点不同
1、order by:用来对数据库的一组数据进行排序。
2、group by:指定的规则对数据进行分组,所谓的分组就是将一个“数据集”划分成若干个“小区域”,然后针对若干个“小区域”进行数据处理。
三、引证用法不同
1、order by:order作“次序,顺序”“治安,秩序”“整齐,有条理”解时,是不可数名词。作“订购,订货”“命令,嘱咐”“汇票,汇单”解时,是可数名词。
2、group by:group的基本意思是“群,团体,组类”,指由很多的人或物偶然或有意组成的一个有秩序、有组织的整体,有时也可指较小的“人群”,还可以指一个大型的商业机构,即“集团”或某种“类别”。
你老师的写法是一个嵌套查询语句。
==================================
我晕……楼上哪里看出嵌套了……
好吧,楼主主要是两个问题,
一个是什么情况该用Group by,
还有一个是having 和where有什么区别。
那个题目可以这样读的吧:
统计“每”一门课程,显示平均分在75分以上的课程号和平均分。
如果不按每门课程统计,就变成对所有课程的分数求平均值了。显然和需求不符。
Group By 是集计分支,只要有统计数据的地方,就极可能用到Group by。
常用的集计函数有这几种:Count, Avg, Max, Min, Sum也就是说,如果要求某一数据的数量、平均值、最大值、最小值、总计,常常都是要和Group By连用的。
所以看见这种题目,就用Group by吧。
二,HAVING和WHERE的区别在于,HAVING是统计完以后进行过滤,而WHERE是在统计前进行过滤。
你的这个题目里,avg(score)是统计以后才得出的数据,所以只能用HAVING。
鹏仔微信 15129739599 鹏仔QQ344225443 鹏仔前端 pjxi.com 共享博客 sharedbk.com
图片声明:本站部分配图来自网络。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!