我是靠谱客的博主 整齐小懒虫,这篇文章主要介绍hiveSQL面试题5__产生连续数值0- 描述,现在分享给大家,希望可以做个参考。

目录

  • 0- 描述

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个空格‘ ’,而不是‘’,所以需要注意下!!

最后

以上就是整齐小懒虫最近收集整理的关于hiveSQL面试题5__产生连续数值0- 描述的全部内容,更多相关hiveSQL面试题5__产生连续数值0-内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(122)

评论列表共有 0 条评论

立即
投稿
返回
顶部