Delen via


dense_rank classificatievenster, functie

Van toepassing op: vinkje als ja aan Databricks SQL vinkje als ja aan Databricks Runtime

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

Syntaxis

dense_rank()

Argumenten

Deze functie heeft geen argumenten.

Retouren

Een GEHEEL GETAL.

De OVER-component van de vensterfunctie moet een ORDER BY-component bevatten. In tegenstelling tot de rangschikkingsvensterfunctie van de functie, produceert dense_rank geen hiaten in de rangordevolgorde. In tegenstelling tot row_number classificatievensterfunctie, breekt dense_rank geen banden. Als de volgorde niet uniek is, delen de duplicaten dezelfde relatieve positie later.

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