정보처리기사 실기SQLSQL - RANK 윈도우 동순위난이도 3SHORT_ANSWER

정보처리기사 실기 SQL - RANK 윈도우 동순위 기출문제 #663

문제

다음 [성적] 테이블에서 SQL문을 실행했을 때, 학생명이 '최민수'인 행의 순위값을 쓰시오.

학생명과목점수
김철호수학85
이영희수학92
최민수수학78
박지원수학92
정수현수학88
SQL
SELECT 학생명, DENSE_RANK() OVER (ORDER BY 점수 DESC) AS 순위 FROM 성적;

정답

4

4

해설

DENSE_RANK() 함수는 동순위가 있어도 다음 순위를 건너뛰지 않습니다.

점수를 내림차순으로 정렬하면:

  • 92점: 이영희, 박지원 (공동 1위)
  • 88점: 정수현 (2위)
  • 85점: 김철호 (3위)
  • 78점: 최민수 (4위)

DENSE_RANK()는 동점자가 있어도 다음 순위를 건너뛰지 않으므로 1, 1, 2, 3, 4 순서로 순위가 매겨집니다. 따라서 최민수(78점)의 순위는 4위입니다.

이런 문제 20~50개를 한 번에 풀어보세요

매번 새로 추가되는 모의고사 + 오답 자동 복습 + 회차별 실력 추적. 회원가입 후 무료 이용.

[정보처리기사 실기] SQL - RANK 윈도우 동순위 SQL 기출 #663 | sqldpass