WHERE 절에 집계함수를 사용할 수 없다.
그래서 그 경우, WHERE 절 대신 HAVING 절을 사용하고, HAVING 절에 집계함수를 사용할 수 있다.
그런데 SELECT 절이든 HAVING 절이든 집계함수가 등장할 경우에는
무조건 GROUP BY를 사용해야 한다. (SELECT 절에서 집계함수를 사용하는 컬럼 제외하고 모든 컬럼에)
⌨️ 예시
mysql> SELECT police_station '경찰서', SUM(case_number) '총 범죄 건수' -> FROM crime_status -> WHERE status_type = '발생' -> GROUP BY police_station -> HAVING SUM(case_number) > 4000; +--------+--------------+ | 경찰서 | 총 범죄 건수 | +--------+--------------+ | 영등포 | 5217 | | 강남 | 4754 | | 관악 | 5261 | | 강서 | 4415 | | 구로 | 4175 | | 송파 | 5410 | +--------+--------------+ 6 rows in set (0.20 sec)
이 때, 순서는 WHERE → GROUP BY → HAVING임을 명심하자!