我是靠谱客的博主 整齐小懒虫,最近开发中收集的这篇文章主要介绍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- 描述所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

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

评论列表共有 0 条评论

立即
投稿
返回
顶部