gpt4 book ai didi

hadoop - 将 Hive Map 数据对象分解为长格式

转载 作者:可可西里 更新时间:2023-11-01 16:28:40 24 4
gpt4 key购买 nike

我的表中有一个 map 数据类型,其中包含相当多的键值 (10-30)。当我分解键值时,我得到以下结果:

SELECT id, key,value
FROM tbl1
lateral view explode(map_field) feature_cols

结果:

id, key1, value1
id, key2, value2
id, key3, value3

不过,我想看看:

id, key1, key2, key3
1, value1, valu2, value3

是否有任何命令可以生成我想要的格式,或者是否有任何命令可以将展开的输出转换为我想要的长格式?

最佳答案

我们需要在横向 View 展开后将列转置为行。您可以编写如下所述的查询。

Select 
id,
Case when key=key1 then value1 as key1,
Case when key=key2 then value2 as key2,
Case when key=key3 then value3 as key3
From

(SELECT id, key, value FROM tbl1 lateral view explode(map_field) feature_cols) temp

关于hadoop - 将 Hive Map 数据对象分解为长格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47407653/

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