Megosztás a következőn keresztül:


rank rangsorolási ablakfüggvény

A következőkre vonatkozik: jelölje be az igennel jelölt jelölőnégyzetet Databricks SQL jelölje be az igennel jelölt jelölőnégyzetet Databricks Runtime

Egy érték rangját adja vissza a partíció összes értékéhez képest.

Syntax

rank()

Argumentumok

Ez a függvény nem vesz fel argumentumokat.

Válaszok

Egy INTEGER.

Az OVER ablakfüggvény záradékának tartalmaznia kell egy ORDER BY záradékot.

A függvénytől dense_rankeltérően a rang a rangsorolási sorrendben is hézagokat fog eredményezni. Ellentétben row_numbera rang nem szakítja meg a kötelékeket.

Ha a sorrend nem egyedi, az ismétlődések azonos relatív korábbi pozícióval rendelkeznek.

Példák

> 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