Oracle 기준으로 다음 SQL을 실행한 결과로 옳은 것은? (편명은… | [SQLD] SQL 개발자 기출유형 모의고사 4회 상세 페이지
1[SQLD] SQL 개발자 기출유형 모의고사 4회
Oracle 기준으로 다음 SQL을 실행한 결과로 옳은 것은? (편명은 숫자가 영문자보다 앞선다)[운항]
| 편명 | 지연분 |
|---|---|
| KE1 | 15 |
| KE2 | (null) |
| OZ3 | 0 |
| OZ4 | 15 |
| 7C5 | (null) |
| KE6 | 40 |
SELECT 편명, 지연분 FROM 운항 ORDER BY 지연분 DESC NULLS LAST, 편명 DESC;
1
| 편명 | 지연분 |
|---|---|
| KE6 | 40 |
| OZ4 | 15 |
| KE1 | 15 |
| OZ3 | 0 |
| KE2 | (null) |
| 7C5 | (null) |
2
| 편명 | 지연분 |
|---|---|
| KE6 | 40 |
| KE1 | 15 |
| OZ4 | 15 |
| OZ3 | 0 |
| KE2 | (null) |
| 7C5 | (null) |
3
| 편명 | 지연분 |
|---|---|
| OZ3 | 0 |
| OZ4 | 15 |
| KE1 | 15 |
| KE6 | 40 |
| KE2 | (null) |
| 7C5 | (null) |
4
| 편명 | 지연분 |
|---|---|
| KE2 | (null) |
| 7C5 | (null) |
| KE6 | 40 |
| OZ4 | 15 |
| KE1 | 15 |
| OZ3 | 0 |
해설
NULLS LAST 로 NULL 을 맨 뒤로 보낸 채 지연분 내림차순(40, 15, 0)으로 놓고, 같은 지연분은 편명 DESC로 정렬해 OZ4 가 KE1 앞에 온다.
NULL 두 행도 편명 내림차순이라 KE2, 7C5 순이며 NULLS LAST 가 없으면 Oracle 은 DESC 에서 NULL 을 맨 앞에 둔다.
- NULL 이 맨 앞인 표는 NULLS LAST 를 무시한 기본 동작이다.
- KE1 이 OZ4 앞인 표는 두 번째 키를 오름차순으로 보았다.
- 0 부터 시작한 표는 지연분을 오름차순으로 정렬했다.
오류나 개정된 내용이 보이면 알려주세요