더북(TheBook)

2 총계 산출과 HAVING 절

GROUP BY 절에 WITH ROLLUP 구문을 사용하면 추가로 항목별 소계와 총계를 구할 수 있습니다.

WITH ROLLUP 구문으로 계산된 소계와 총계의 항목 값은 NULL로 조회됩니다.

③ 항목 값 자체에 NULL이 포함되면 WITH ROLLUP으로 계산된 소계나 총계의 항목 값으로 나온 NULL과 구분하기 쉽지 않은데, 이때는 GROUPING() 함수를 사용합니다.

WITH ROLLUP 구문이 있는 집계 쿼리에서 SELECT 절에 사용한 GROUPING() 함수는 소계나 총계로 계산된 로우의 항목 값을 1로, 일반 항목 값을 0으로 반환합니다.

⑤ 집계 함수의 결괏값을 기준으로 조회 조건을 줄 때는 WHERE 절이 아닌 HAVING 절에 기술해야 합니다.

HAVING 절은 GROUP BY 절 다음에 위치하며 집계 함수나 GROUPING() 함수를 명시하면 해당 함수의 결괏값을 조건으로 줄 수 있습니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.