Oracle 기준으로 다음 SQL 의 실행 결과로 옳은 것은?[계약]계… | [SQLD] SQL 개발자 기출유형 모의고사 10회 상세 페이지

1[SQLD] SQL 개발자 기출유형 모의고사 10회
Oracle 기준으로 다음 SQL 의 실행 결과로 옳은 것은?

[계약]

계약번호등급보험료
1A50
2(null)30
3B70
4A90
5(null)60
6B40
SELECT 계약번호, 등급, 보험료
  FROM 계약
 ORDER BY 등급 DESC NULLS LAST, 보험료 DESC;
1
계약번호등급보험료
6B40
3B70
1A50
4A90
2(null)30
5(null)60
2
계약번호등급보험료
3B70
6B40
4A90
1A50
5(null)60
2(null)30
3
계약번호등급보험료
4A90
1A50
3B70
6B40
5(null)60
2(null)30
4
계약번호등급보험료
5(null)60
2(null)30
3B70
6B40
4A90
1A50
해설

Oracle 은 NULL 을 가장 큰 값으로 보아 DESC 에서 맨 앞에 두지만 NULLS LAST 를 지정했으므로 B→A→NULL 순이 된다.

같은 등급 안에서는 두 번째 키 보험료 DESC 로 B(70, 40)·A(90, 50)·NULL(60, 30) 순으로 정렬된다.

  • NULL 이 맨 앞인 표는 NULLS LAST 를 무시한 기본 DESC 정렬이다.
  • 같은 등급 안에서 보험료가 오르는 표는 두 번째 키를 오름차순으로 보았다.
  • A 등급이 먼저인 표는 등급을 오름차순으로 정렬했다.

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

이어서 풀어보기

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