使用 HAVING 子句时 SELECT 语句的顺序
- SELECT → FROM → WHERE → GROUP BY → HAVING
HAVING 子句中能够使用的 3 种要素:
- 常数
- 聚合函数
- GROUP BY子句中指定的列名(即聚合键)
相对于HAVING子句,更适合写在WHERE子句中的条件
通常情况下,为了得到相同的结果,将条件写在 WHERE 子句中要比写在 HAVING 子句中的处理速度更快,返回结果所需的时间更短。
结论:聚合键所对应的条件不应该书写在HAVING子句当中,而应该书写在WHERE子句当中。