문제
https://solvesql.com/problems/top-3-bill/
https://solvesql.com/problems/top-3-bill/
solvesql.com
코드
SELECT
day,
time,
sex,
total_bill
from
(select
*,
dense_rank() over (partition by day order by total_bill desc) as rnk
from tips) as t
where rnk <= 3
-- 4분
문제 풀이
- dense_rank() over
중복값이 있으면
1 / 2 2 / 3
이런식으로 출력해주는 게 dense_rank (순위를 빽빽하게 매긴다 -> dense하다는 식으로 외웠다)
참고로 rank()는 1 / 2 2 / 4 로 순위가 매겨진다.
느낀 점
없음 !

'Tools > - SQL' 카테고리의 다른 글
| [SQL] solvesql | 쇼핑몰의 일일 매출액과 ARPPU (0) | 2025.02.14 |
|---|---|
| [SQL] solvesql | 세 명이 서로 친구인 관계 찾기 | self join 활용하기, on절 조건 여러개 (0) | 2025.02.14 |
| [SQL] solvesql | 유량(Flow)와 저량(Stock) | strftime로 날짜 추출하기 | SQLite (0) | 2025.02.09 |
| [SQL] solvesql | 게임 개발사의 주력 플랫폼 찾기 (0) | 2025.02.09 |
| [SQL] solvesql | 전력 소비량 이동 평균 구하기 | rows 와 range의 차이 (0) | 2025.02.09 |