학습용 기출·복원자료 분류 확인SQLD · 2023년 48회 SQL 기본 및 활용 · 29번
`GROUP BY ROLLUP(A, B)`가 생성하는 집계 수준으로 옳은 것은?
1
(A,B)별 집계만
오답 이유ROLLUP은 지정 열의 상세 그룹뿐 아니라 오른쪽 열을 차례로 제거한 소계와 전체 합계도 만든다. 따라서 1번 보기 ‘(A,B)별 집계만’의 적용 여부를 문제 조건과 대조해야 한다.
2
A별 소계만
오답 이유A별 소계 외에 (A,B) 상세 집계와 빈 그룹의 전체 합계도 함께 생성된다. 따라서 2번 보기 ‘A별 소계만’의 적용 여부를 문제 조건과 대조해야 한다.
3
B별 소계와 전체 합계만
오답 이유ROLLUP(A,B)는 B만 남기는 그룹을 만들지 않으며 (A,B)와 A, 전체 순으로 집계한다. 따라서 3번 보기 ‘B별 소계와 전체 합계만’의 적용 여부를 문제 조건과 대조해야 한다.
4
(A,B)별 집계, A별 소계, 전체 합계
정답 근거ROLLUP(A,B)는 오른쪽부터 집계 열을 제거해 `(A,B)`, `(A)`, `()` 그룹을 만든다. 따라서 상세 그룹, A 소계, 전체 합계가 출력된다. 따라서 4번 보기 ‘(A,B)별 집계, A별 소계, 전체 합계’의 적용 여부를 문제 조건과 대조해야 한다.
ANSWER & EXPLANATION
정답 4번
핵심 판단은 4번 ‘(A,B)별 집계, A별 소계, 전체 합계’입니다. ROLLUP(A,B)는 오른쪽부터 집계 열을 제거해 `(A,B)`, `(A)`, `()` 그룹을 만든다. 따라서 상세 그룹, A 소계, 전체 합계가 출력된다.