7.2.2 GROUPING( ) 함수
GROUPING() 함수는 집계 함수가 아니지만, GROUP BY 절과 WITH ROLLUP을 사용하는 집계 쿼리에 추가 기능을 제공합니다. 예제를 보면 기능을 이해하기가 훨씬 쉬우므로 예제를 실행한 결과를 보며 설명하겠습니다.
코드 7-19
SELECT movie_type 영화유형, SUM(sale_amt) 금액
FROM box_office
WHERE YEAR(release_date) = 2019
GROUP BY movie_type WITH ROLLUP;
실행결과
코드 7-19는 2019년 개봉 영화의 영화 유형별 매출액의 소계를 구하는 쿼리입니다. 그런데 결과를 보면 좀 이상합니다. 영화 유형의 값이 NULL인 건이 2건이죠. 여기서 첫 번째 행의 NULL은 영화 유형이 담긴 movie_type 칼럼에 값이 들어 있지 않은 건이 조회된 결과고, 마지막 로우의 NULL은 WITH ROLLUP으로 계산된 영화 유형별 매출액의 총계입니다.