다음 [결과]를 얻기 위해 ( ㉠ )에 들어갈 구문으로 옳은 것은?[계… | [SQLD] SQL 개발자 기출유형 모의고사 10회 상세 페이지

1[SQLD] SQL 개발자 기출유형 모의고사 10회
다음 [결과]를 얻기 위해 ( ㉠ )에 들어갈 구문으로 옳은 것은?

[계약]

계약번호지점상품군보험료
1강남종신30
2강남실손10
3분당종신20
4분당실손15
5분당실손5
SELECT 지점, 상품군, SUM(보험료) AS 합계
  FROM 계약
 GROUP BY ( ㉠ )
 ORDER BY 상품군, 지점;

[결과]

지점상품군합계
강남실손10
분당실손20
(null)실손30
강남종신30
분당종신20
(null)종신50
(null)(null)80
1
ROLLUP (지점, 상품군)
2
ROLLUP (상품군, 지점)
3
지점, ROLLUP (상품군)
4
CUBE (상품군, 지점)
해설

[결과]에는 상품군별 소계(지점 NULL)와 총계만 있으므로, 상품군을 상위 계층으로 둔 ROLLUP (상품군, 지점) 이 맞다.

ROLLUP 은 인수 순서대로 (상품군, 지점), (상품군), () 단계로 집계하며 SELECT 절 열 순서와는 무관하다.

  • ROLLUP (지점, 상품군) 은 지점별 소계를 만들어 강남·분당 소계 행이 나온다.
  • CUBE 는 상품군 소계와 지점 소계를 모두 만들어 행이 더 많다.
  • 지점, ROLLUP (상품군) 은 지점별 소계만 만들고 총계 행이 없다.

오류나 개정된 내용이 보이면 알려주세요

이어서 풀어보기

[SQLD] SQL 개발자 기출유형 모의고사 10회 50문항 이어서 보기문제·정답·해설을 한 페이지에서 이어서 볼 수 있어요SQLD SQL 개발자 실전 모의고사 암기장 전체 보기