Oracle 기준으로 다음 ㉠과 ㉡의 결과 행 수를 순서대로 나열한 것… | [SQLD] SQL 개발자 기출유형 모의고사 5회 상세 페이지
1[SQLD] SQL 개발자 기출유형 모의고사 5회
Oracle 기준으로 다음 ㉠과 ㉡의 결과 행 수를 순서대로 나열한 것은?[회원대출]
| 회원 | 도서 | DVD | 전자책 |
|---|---|---|---|
| 한결 | 3 | (null) | 1 |
| 서아 | (null) | 2 | (null) |
| 도윤 | (null) | (null) | (null) |
| 나래 | 4 | 1 | 2 |
㉠
SELECT 회원, 매체, 건수 FROM 회원대출 UNPIVOT (건수 FOR 매체 IN (도서, DVD, 전자책));
㉡
SELECT 회원, 매체, 건수
FROM 회원대출
UNPIVOT INCLUDE NULLS
(건수 FOR 매체 IN (도서, DVD, 전자책));1
6, 12
2
12, 12
3
6, 9
4
7, 12
해설
UNPIVOT 은 기본값이 EXCLUDE NULLS 라 값이 있는 칸만 행이 되므로 ㉠은 한결 2·서아 1·도윤 0·나래 3의 6행이다.
INCLUDE NULLS 를 주면 NULL 칸도 행으로 남아 회원 4명×매체 3개=12행이 되며, 모든 값이 NULL 인 도윤도 3행으로 나온다.
- 6과 9는 INCLUDE NULLS 에서도 값이 전부 NULL 인 원본 행은 사라진다고 본 경우이다.
- 7과 12는 기본 동작에서 전부 NULL 인 도윤이 한 행으로 남는다고 본 경우이다.
- 12와 12는 기본값이 NULL 칸도 행으로 만든다고 본 경우이다.
오류나 개정된 내용이 보이면 알려주세요