문제
다음 [성적] 테이블에서 SQL문을 실행했을 때, 학생명이 '박지성'인 행의 순위 값을 쓰시오.
| 학생명 | 과목 | 점수 |
|---|---|---|
| 김유신 | 수학 | 85 |
| 이순신 | 수학 | 90 |
| 박지성 | 수학 | 90 |
| 홍길동 | 수학 | 75 |
SQLSELECT 학생명, DENSE_RANK() OVER (ORDER BY 점수 DESC) AS 순위 FROM 성적;
정답
1
1
해설
DENSE_RANK() 함수는 동순위가 있어도 다음 순위를 건너뛰지 않습니다. 점수를 내림차순으로 정렬하면 이순신(90)과 박지성(90)이 공동 1위, 김유신(85)이 2위, 홍길동(75)이 3위가 됩니다. 따라서 박지성의 순위는 1입니다.