Share via


rank función de ventana de clasificación

Se aplica a:check marked yes Databricks SQL check marked yes Databricks Runtime

Devuelve el rango de un valor comparado con todos los valores de la partición.

Sintaxis

rank()

Argumentos

Esta función no toma ningún argumento.

Devoluciones

Un valor de tipo INTEGER.

La cláusula OVER de la función de ventana debe incluir una cláusula ORDER BY.

Al contrario que la función dense_rank, rank producirá intervalos en la secuencia de clasificación. A diferencia de row_number, rank no deshace empates.

Si el orden no es único, los duplicados comparten la misma posición anterior relativa.

Ejemplos

> 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