Différences dans les options de classement par score

Salut,

Quelqu’un connaît les différences entre les options dense_rank / rank / row_number dans la stratégie de classement des scores ?

1 « J'aime »

row_number () → bigint
Retourne le numéro de la ligne actuelle dans sa partition, en commençant à 1.

rank () → bigint
Retourne le rang de la ligne actuelle, avec des sauts ; c’est-à-dire le row_number de la première ligne de son groupe de pairs.

dense_rank () → bigint
Retourne le rang de la ligne actuelle, sans sauts ; cette fonction compte effectivement les groupes de pairs.

En gros, cela change la façon dont les égalités sont gérées.

  • Sur row_number, il n’y a pas d’égalités.
  • Sur rank, s’il y a deux égalités à la position 5, la suivante sera la position 7 car la 6 a été sautée.
  • Sur dense_rank, s’il y a deux égalités à la position 5, la suivante sera la position 6.
4 « J'aime »

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.