MySQL 的 HAVING 和 GROUP BY 是用来对结果集进行分组和筛选的两个关键字。
GROUP BY 关键字用来对结果集进行分组,它后面跟的是分组的字段名。在使用 GROUP BY 时,会将结果集按照分组字段的值进行分组,并对每一组数据进行聚合操作。
HAVING 关键字用来对分组后的结果集进行筛选,它后面跟的是过滤条件。在使用 HAVING 时,会将分组后的结果集按照过滤条件进行过滤,只保留满足条件的组。
常见的语法结构为:
SELECT field1, aggregate_function(field2)
FROM table_name
GROUP BY field1
HAVING aggregate_function(field2) operator value;