Share via


dense_rank funzione della finestra di classificazione

Si applica a:check contrassegnato sì controllo SQL databricks contrassegnato come sì Databricks Runtime

Restituisce la classificazione di un valore rispetto a tutti i valori della partizione.

Sintassi

dense_rank()

Argomenti

Questa funzione non accetta argomenti.

Restituisce

Intero.

La clausola OVER della funzione finestra deve includere una clausola ORDER BY. A differenza della funzione di classificazione delle funzioni, dense_rank non produrrà lacune nella sequenza di classificazione. A differenza della funzione finestra di classificazione row_number, dense_rank non interrompe i vincoli. Se l'ordine non è univoco, i duplicati condividono la stessa posizione successiva relativa.

Esempi

> 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