在MySQL中,HAVING子句用于在对查询结果进行分组后,对分组结果进行筛选。它与WHERE子句的区别在于,WHERE子句用于筛选行,而HAVING子句用于筛选分组。
HAVING子句的一般语法如下:
SELECT 列1, 列2, ...
FROM 表名
WHERE 条件
GROUP BY 列1
HAVING 条件
在上面的语法中,HAVING子句需要配合GROUP BY子句一起使用,首先对查询结果进行分组,然后再对分组结果进行筛选。HAVING子句中的条件通常是用于对聚合函数的结果进行筛选,例如对SUM、AVG、COUNT等函数的结果进行筛选。
举例来说,假设我们有一个学生表,包含学生的姓名、班级和成绩字段,我们想要找出每个班级平均成绩大于80分的班级,可以使用HAVING子句来实现:
SELECT 班级, AVG(成绩) as 平均成绩
FROM 学生表
GROUP BY 班级
HAVING AVG(成绩) > 80
在上面的例子中,首先根据班级分组,然后计算每个班级的平均成绩,最后筛选出平均成绩大于80分的班级。
辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
推荐阅读: mysql atlas 是什么以及如何安装