ROW_NUMBER() — уникальный порядковый номер для каждой строкиDENSE_RANK() — одинаковый ранг для одинаковых значений, без пропусков в нумерацииRANK() — одинаковый ранг для одинаковых значений, после совпадений появляются пропускиПример:
score
-----
100
100
90
80
ROW_NUMBER()1
2
3
4
DENSE_RANK()1
1
2
3
RANK()1
1
3
4
Джесс Рамос показывает разницу между этими функциями на практике и разбирает типичные сценарии их использования.
👉 @SQLPortal