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

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

[사원]

사번이름부서코드급여
1김민D20300
2이준D10400
3박서D20250
4최유(null)350
5정하D10380
6한결D30280
SELECT 이름, 부서코드 AS 부서, 급여 * 12 AS 연봉
  FROM 사원
 ORDER BY 2 DESC, 연봉;
1
이름부서연봉
최유(null)4200
한결D303360
박서D203000
김민D203600
정하D104560
이준D104800
2
이름부서연봉
최유(null)4200
한결D303360
김민D203600
박서D203000
이준D104800
정하D104560
3
이름부서연봉
정하D104560
이준D104800
박서D203000
김민D203600
한결D303360
최유(null)4200
4
이름부서연봉
한결D303360
박서D203000
김민D203600
정하D104560
이준D104800
최유(null)4200
해설

ORDER BY 2 DESC는 두 번째 열인 부서를 내림차순으로 정렬하며, Oracle은 NULL을 가장 큰 값으로 보아 DESC에서 NULL이 맨 앞에 온다.

DESC는 바로 앞 키에만 적용되므로 같은 부서 안에서는 별칭 연봉 기준 오름차순이 되어 D20은 박서·김민, D10은 정하·이준 순이다.

  • 최유를 맨 뒤에 둔 표는 NULL을 가장 작은 값으로 보았다.
  • 같은 부서에서 연봉이 큰 사원을 먼저 둔 표는 DESC가 모든 키에 적용된다고 보았다.
  • D10부터 나열한 표는 부서를 오름차순으로 정렬했다.

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

이어서 풀어보기

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