문제
다음 SQL문에서 HAVING 절의 사용이 올바른 것은?
① SELECT 부서, COUNT() FROM 직원 WHERE COUNT() > 5 GROUP BY 부서 ② SELECT 부서, COUNT() FROM 직원 GROUP BY 부서 HAVING COUNT() > 5 ③ SELECT 부서, COUNT() FROM 직원 HAVING COUNT() > 5 GROUP BY 부서 ④ SELECT 부서, COUNT() FROM 직원 GROUP BY 부서 WHERE COUNT() > 5
정답
2번
해설
HAVING 절은 GROUP BY 절 다음에 위치하며, 그룹화된 결과에 대한 조건을 지정한다. ①번은 WHERE 절에서 집계함수를 사용할 수 없어 오류이고, ③번은 HAVING이 GROUP BY보다 앞에 와서 구문 오류이며, ④번은 GROUP BY 다음에 WHERE가 와서 구문 오류이다.