MySQL 常见子句:HAVING 子句 0 个改进

MySQL的 HAVING 子句与 GROUP BY 配合使用,返回 HAVING 条件为 TRUE 的记录。

语法:

SELECT expression1, expression2, ... expression_n,   
aggregate_function (expression)  
FROM tables  
[WHERE conditions]  
GROUP BY expression1, expression2, ... expression_n  
HAVING condition;  

参数:

aggregate_function: 聚合函数,例如SUM、COUNT、MIN、MAX或AVG。

expression1, expression2, ... expression_n: 指定查询要检索的列,这些列必须包含在 GROUP BY 子句中。

WHERE conditions: 可选项,查询的过滤条件。

HAVING condition: 返回分组结果集中的过滤条件。

HAVING 子句与 SUM

数据表 "employees" 如下所示:

HAVING 子句

使用求和函数 SUM 求取员工工作总时长,并使用 HAVING 对求和结果进行过滤。

执行查询语句:

SELECT emp_name, SUM(working_hours) AS "Total working hours"  
FROM employees  
GROUP BY emp_name  
HAVING SUM(working_hours) > 5;  

MySQL having clause 2

同理,HAVING 也可以和COUNT、 MIN、MAX、AVG 聚合函数一起使用。

本文为 Wiki 文章,邀您参与纠错、纰漏和优化
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!