目录
0- 描述
期望输出结果如下所示:
1
2
3
4
5
...
100
参考答案:
不借助其他任何外表,实现产生连续数值
此处给出两种解法,其一:
select
id_start+pos as id
from(
select
1 as id_start,
1000000 as id_end
) m lateral view posexplode(split(space(id_end-id_start), '')) t as pos, val
其二:
select
row_number() over() as id
from
(select split(space(99), ' ') as x) t
lateral view
explode(x) ex;
那如何产生1至1000000连续数值?
参考答案:
select
row_number() over() as id
from
(select split(space(999999), ' ') as x) t
lateral view
explode(x) ex;
注意:space(99) 此时返回的是99个空格‘ ’,而不是‘’,所以需要注意下!!