Функции: оконныеStandard SQL
RANK()
Присваивает ранг строкам. При одинаковых значениях ранги совпадают, следующий ранг пропускается.
Синтаксис
RANK() OVER ([PARTITION BY column] ORDER BY column)Примеры
Рейтинг с пропусками
SELECT name, score,
RANK() OVER (ORDER BY score DESC) AS rank
FROM players;→ Alice: 1, Bob: 1, Charlie: 3
Важно знать
- ⚠Если два игрока на 1 месте — следующий получит 3, не 2. Для без пропусков — DENSE_RANK.