【MySQL】where和having的区别
什么时候用 WHERE,什么时候用 HAVING?
WHERE:- 用于对原始数据进行筛选。
- 不能使用聚合函数。
- 例:筛选分数大于 60 的记录。sql复制代码
SELECT student_id, num FROM score WHERE num > 60;
HAVING:- 用于对分组后的数据进行筛选。
- 可以使用聚合函数。
- 例:筛选平均分大于 60 的学生。sql复制代码
SELECT student_id, AVG(num) FROM score GROUP BY student_id HAVING AVG(num) > 60;