gpt4 book ai didi

java - Hive 爆炸功能

转载 作者:行者123 更新时间:2023-12-01 12:36:19 27 4
gpt4 key购买 nike

我的表

name    id  number
Joe 20 72-11433.80-11427.14-6.66-R
kay 115 3-547.86-547.86-0.00-R
mary 85 12-0.49-0.49-0.00-R

从 myTable 中选择 *

Joe   20    72-11433.80-11427.14-6.66-R
kay 115 3-547.86-547.86-0.00-R
mary 85 12-0.49-0.49-0.00-R

从 myTable 中选择 split(number,'\-')

["72","11433.80","11427.14","6.66","R"]
["3","547.86","547.86","0.00","R"]
["12","0.49","0.49","0.00","R"]

从 myTable 中选择爆炸(split(number,'\-'))

72
11433.80
11427.14
6.66
R

我想知道是否有一个函数可以像explode函数一样工作但所需的输出将在列而不是行中。这样:选择名称,爆炸(split(数字,'\-'))FROM myTable

Joe    72   11433.80    11427.14    6.66    R
kay 3 547.86 547.86 0.00 R
mary 12 0.49 0.49 0.00 R

增加列数而不是行数

最佳答案

我认为这样的功能不存在。但是您当然可以直接访问数组元素,一次一个,如下所示:

select split(number,'\-')[0], split(number,'\-')[1], split(number,'\-')[2], split(number,'\-')[3], split(number,'\-')[4] from myTable

关于java - Hive 爆炸功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25550939/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com