다음 SQL 을 실행했을 때 결과 행 수는?[예매집계]요일관종류인원토일… | [SQLD] SQL 개발자 기출유형 모의고사 9회 상세 페이지
1[SQLD] SQL 개발자 기출유형 모의고사 9회
다음 SQL 을 실행했을 때 결과 행 수는?[예매집계]
| 요일 | 관종류 | 인원 |
|---|---|---|
| 토 | 일반 | 3 |
| 토 | IMAX | 2 |
| 일 | 일반 | 4 |
| 일 | (null) | 1 |
| 토 | 일반 | 2 |
SELECT 요일, 관종류, SUM(인원) AS 인원 FROM 예매집계 GROUP BY CUBE(요일, 관종류) ORDER BY 요일, 관종류;
1
7
2
10
3
12
4
9
해설
CUBE(요일, 관종류) 는 데이터에 실제로 있는 조합별 행 4개, 요일별 소계 2개, 관종류별 소계 3개, 총계 1개를 만들어 10행이 된다.
조합은 (토,일반)·(토,IMAX)·(일,일반)·(일,NULL) 이고, 원래 NULL 인 관종류도 하나의 값이라 관종류별 소계가 일반·IMAX·NULL 3개다.
- 7행은 관종류별 소계가 없는 ROLLUP 의 행 수이다.
- 9행은 원래 NULL 인 관종류의 소계를 빼고 센 값이다.
- 12행은 없는 조합까지 모두 만든다고 본 값이다.
오류나 개정된 내용이 보이면 알려주세요