rank classificatievenster, functie

Van toepassing op:check marked yes Databricks SQL check marked yes Databricks Runtime

Retourneert de rang van een waarde in vergelijking met alle waarden in de partitie.

Syntaxis

rank()

Argumenten

Deze functie heeft geen argumenten.

Retouren

Een INTEGER.

De OVER component van de vensterfunctie moet een ORDER BY-component bevatten.

In tegenstelling tot de functie dense_rankproduceert rangschikking hiaten in de rangorde. In tegenstelling tot row_number, rang breekt geen banden.

Als de order niet uniek is, delen de duplicaten dezelfde relatieve eerdere positie.

Voorbeelden

> 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