having只能在group之后使用,对分组的结果进行筛选(having的前提是分组)
where在group by之后
在执行where之后返回一个结果集----使用group by分组----select执行每组的条件------having筛选---排序
where后的条件不可以使用聚合函数(avg,sum,count,min)having可以判断值的条件
例子:
由高到低,显示平均分在70的学生姓名与平均分(在计算平均分之前不包括60分与JR的成绩)
select s_name,avg(score) from student
where score>=60 and s_name!="JR"'
group by s_name
having avg(s_name)>=70
order by avg(s_sname) desc
on where join
on后面是连接条件,两个表的关系遵循的原则 表A [left] join 表B on(条件,可加where)
where后为筛选条件,结果进行过滤
本文详细介绍了SQL中使用HAVING子句对GROUP BY分组结果进行筛选的方法,并对比了WHERE子句的功能区别。通过一个具体示例展示了如何计算特定条件下学生的平均分数,并按平均分从高到低排序。

429

被折叠的 条评论
为什么被折叠?



