Sdílet prostřednictvím


row_number funkce okna řazení

Platí pro: zaškrtnutí označeného ano Databricks SQL zaškrtnutí označeného ano Databricks Runtime

Přiřadí každému řádku jedinečné pořadové číslo počínaje jedním podle pořadí řádků v oddílu okna.

Syntaxe

row_number()

Argumenty

Funkce nepřijímá žádné argumenty.

Návraty

A INTEGER.

Klauzule OVER funkce okna musí obsahovat klauzuli ORDER BY. Na rozdíl od rank a dense_rank, row_number zlomí vazby.

Pokud pořadí není jedinečné, výsledek není deterministický.

Příklady

> 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