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

众所周知,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)
猜你喜欢