首页 > 文章列表 > 我们如何在 MySQL 返回的结果集的组级别应用过滤条件?

我们如何在 MySQL 返回的结果集的组级别应用过滤条件?

384 2023-09-10

众所周知,SELECT 语句中的 GROUP BY 子句可以将 MySQL 返回的结果集进行分组。现在,如果我们只想返回某些特定组,则需要在组级别应用过滤条件。可以通过在 GROUP BY 子句中使用 HAVING 子句来完成。下面的例子将演示它 -

示例

假设我们只想返回平均工资为 55000 的组,那么我们需要在 HAVING 子句中使用如下过滤条件-

mysql> Select count(*),AVG(salary),Designation from employees GROUP BY designation having AVG(salary) = 55000;

+----------+-------------+-------------+
| count(*) | AVG(salary) | Designation |
+----------+-------------+-------------+
| 2        | 55000.0000  | Asst.Prof   |
+----------+-------------+-------------+

1 row in set (0.00 sec)