문제
다음 UNPIVOT 연산의 결과로 생성되는 행의 개수는?
[원본테이블] 학번 | 국어 | 영어 | 수학 1001 | 90 | 85 | 88 1002 | 78 | 92 | NULL
SQLSELECT * FROM 원본테이블 UNPIVOT (점수 FOR 과목 IN (국어, 영어, 수학));
① 5개 ② 6개 ③ 7개 ④ 8개
정답
1번
해설
①이 정답입니다. UNPIVOT은 NULL 값을 제외하고 행으로 변환합니다. 학번 1001은 3개 과목 모두 값이 있어 3행이 생성되고, 학번 1002는 수학이 NULL이므로 2행만 생성되어 총 5행이 됩니다. UNPIVOT은 NULL 값이 있는 열-행 조합은 결과에서 제외합니다.