홍동이의 성장일기
[LeetCode] 178. Rank Scores 본문
SELECT score
, DENSE_RANK() OVER(ORDER BY score DESC) as "rank"
FROM scores
ORDER BY score DESC
💡 문제 풀이
<윈도우 함수로 순위 구하는 방법>
- 점수는 가장 높은 점수에서 가장 낮은 점수로 매겨져야 한다.
➡️ 윈도우 함수 내림차순 (DESC) - 만약 두 점수 사이에 동점이 있다면, 둘 다 같은 순위가 되어야 한다.
➡️ RANK 🆚 DENSE_RANK - 동점 뒤에 다음 순위 번호는 그 다음 연속 정수 값이어야 한다. 다시 말해 순위 사이에 구멍이 없어야 한다.
➡️ DENSE_RANK
➕ 컬럼 이름을 그냥 rank로 설정하면 오류가 발생한다. (함수명이기 때문에) 따옴표를 붙히면 문제가 해결된다.
📍 본 내용은 '[백문이불여일타] 데이터 분석을 위한 고급 SQL 문제풀이'를 수강하며 작성한 내용입니다.
728x90
'Tool > SQL 코딩테스트 풀이' 카테고리의 다른 글
[LeetCode] 176. Second Highest Salary (0) | 2023.12.10 |
---|---|
[LeetCode] 626. Exchange Seats (0) | 2023.10.15 |
[HackerRank] Weather Observation Station 20 (0) | 2023.10.13 |
[HackerRank] Weather Observation Station 11 (0) | 2023.10.13 |
[HackerRank] Ollivander's Inventory (0) | 2023.10.12 |
Comments