문제
다음 SQL문에서 부서별 평균 급여가 3000 이상인 부서만 조회하고자 할 때, 빈 칸에 들어갈 가장 적절한 절은?
SELECT 부서코드, AVG(급여) FROM 직원 GROUP BY 부서코드 _______ AVG(급여) >= 3000;
① WHERE ② HAVING ③ ORDER BY ④ FILTER
정답
2번
해설
HAVING절은 GROUP BY로 그룹화된 결과에 조건을 적용할 때 사용한다. 집계함수 결과에 조건을 걸 때는 WHERE가 아닌 HAVING을 사용해야 한다. WHERE는 그룹화 전 개별 행에 조건을 적용하고, ORDER BY는 정렬, FILTER는 표준 SQL 절이 아니다.