GENERATE_SERIES işlevi, from ile to değerleri arasında (sınırlar dahil) ardışık tamsayılardan oluşan bir dizi oluşturur.
Söz dizimi
GENERATE_SERIES(BIGINT from, BIGINT to)
Parametreler
|
|
|
|
|
|
|
|
|
|
|
|
Örnek
Test verileri
|
|
|
|
|
|
|
|
|
Test kodu
CREATE TEMPORARY TABLE input_table(
s BIGINT NOT NULL,
e BIGINT NOT NULL
) WITH (
'connector' = 'datagen'
);
CREATE TEMPORARY TABLE output_table(
s BIGINT NOT NULL,
e BIGINT NOT NULL,
v BIGINT NOT NULL
) WITH (
'connector' = 'print'
);
INSERT INTO output_table
SELECT s, e, v FROM input_table, LATERAL TABLE(GENERATE_SERIES(s, e)) AS t(v);
Test sonucu
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Giriş satırı (1, 3) için işlev 1, 2, 3 değerlerini üretir. Giriş satırı (-2, 1) için ise -2, -1, 0, 1 değerlerini üretir.