row_number
-Rangfolgefensterfunktion
Gilt für: Databricks SQL Databricks Runtime
Weist jeder Zeile eine eindeutige, fortlaufende Nummer entsprechend der Reihenfolge der Zeilen in der Fensterpartition zu, beginnend mit eins.
Syntax
row_number()
Argumente
Die Funktion nimmt keine Argumente an.
Gibt zurück
Ein INTEGER
-Element.
Die OVER
-Klausel der Fensterfunktion muss eine ORDER BY-Klausel enthalten.
Im Gegensatz zu rank
und dense_rank
unterbricht row_number
die Bindungen.
Wenn die Reihenfolge nicht eindeutig ist, ist das Ergebnis nicht deterministisch.
Beispiele
> 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