range
-Tabellenwertfunktion
Gibt eine Tabelle mit Werten innerhalb eines angegebenen Bereichs zurück.
Syntax
range(end)
range(start, end [, step [, numParts] ] )
Argumente
start
: Ein optionalesBIGINT
-Literal, das standardmäßig 0 ist und den ersten erzeugten Wert markiert.end
: EinBIGINT
-Literal, das den Endpunkt (exklusiv) der Zahlengenerierung markiert.step
: Ein optionalesBIGINT
-Literal mit dem Standardwert 1, das das bei der Erzeugung von Werten verwendete Inkrement angibt.numParts
: Ein optionalesINTEGER
-Literal, das angibt, wie die Erzeugung von Zeilen auf die Partitionen verteilt wird.
Gibt zurück
Eine Tabelle mit einer einzelnen BIGINT
-Spalte namens id
.
Beispiele
> SELECT spark_partition_id(), t.* FROM range(5) AS t;
3 0
6 1
9 2
12 3
15 4
> SELECT * FROM range(-3, 0);
-3
-2
-1
> SELECT spark_partition_id(), t.* FROM range(0, -5, -1, 2) AS t;
0 0
0 -1
1 -2
1 -3
1 -4