문제
다음 윈도우 함수의 실행 결과에서 점수가 85점인 학생의 순위는?
학생 테이블: 김철수(90점), 이영희(85점), 박민수(85점), 최수진(80점)
SQLSELECT 이름, 점수, DENSE_RANK() OVER (ORDER BY 점수 DESC) AS 순위 FROM 학생;
① 2 ② 2와 3 ③ 3 ④ 2와 4
정답
1번
해설
DENSE_RANK()는 동일 순위가 있어도 다음 순위를 건너뛰지 않는다. 점수 순으로 김철수(90점, 1위), 이영희와 박민수(85점, 공동 2위), 최수진(80점, 3위)가 된다. 따라서 85점인 두 학생 모두 2위이다. ② 개별 순위가 아닌 공동 순위이다. ③ RANK() 함수의 경우이다. ④ RANK() 함수에서도 맞지 않다.