dense_rank
Fonction de fenêtre de classement
S’applique à : Databricks SQL Databricks Runtime
Retourne le rang d’une valeur par rapport à toutes les valeurs dans la partition.
Syntaxe
dense_rank()
Arguments
Cette fonction ne prend pas d'arguments.
Retours
Un ENTIER.
La clause OVER de la fonction de fenêtre doit inclure une clause ORDER BY. Contrairement à la fonction de fenêtre de classement rank, dense_rank ne produit pas d’écarts dans la séquence de classement. Contrairement à la fonction de fenêtre de classement row_number, dense_rank n’interrompt pas les liens. Si l’ordre n’est pas unique, les doublons partagent la même position relative antérieure.
Exemples
> SELECT a,
b,
dense_rank() OVER(PARTITION BY a ORDER BY b),
rank() OVER(PARTITION BY a ORDER BY b),
row_number() OVER(PARTITION BY a ORDER BY b)
FROM VALUES ('A1', 2), ('A1', 1), ('A2', 3), ('A1', 1) tab(a, b);
A1 1 1 1 1
A1 1 1 1 2
A1 2 2 3 3
A2 3 1 1 1