本文为您介绍如何使用GENERATE_SERIES函数,按from、from+1、from+2 … to-1的规则,生成一系列填充数据。
使用限制
仅实时计算引擎VVR 3.0.0及以上版本支持GENERATE_SERIES函数。
语法
GENERATE_SERIES(BIGINT from, BIGINT to)
入参
参数 | 数据类型 |
from | BIGINT类型,指定下界,包含下界值。 |
to | BIGINT类型,指定上界,不包含上界值。 |
示例
测试数据
表 1. T1 s(BIGINT NOT NULL)
e(BIGINT NOT NULL)
1
3
-2
1
测试语句
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);
测试结果
s(BIGINT)
e(BIGINT)
v(BIGINT)
1
3
1
1
3
2
1
3
3
-2
1
-2
-2
1
-1
-2
1
0
-2
1
1