gpt4 book ai didi

hadoop - 针对特定场景的 Hive 查询

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

我有一个场景,我想为其编写一个 Hive 查询。场景在这里:

数据如下:

enter image description here

现在,我期望的输出是:

enter image description here

要忽略的空值。

本质上,我想要列 col1、col2、col3 和 col4 中的值的总和并对这些值进行分组。 “id”列在这里无关紧要,只是为了说明。

为这种情况编写 HiveQL 查询的任何帮助都会有所帮助。

谢谢。

最佳答案

select val, count(1)
from test_table lateral view explode(array(col1,col2,col3,col4)) t as val
where val is not null
group by val

解释:

test_table 是您的表名。
如果列数超过 4,请将它们放入 array 函数中。

首先,我将您所有的列收集到一个数组中。然后使用 lateral view explode(array) 将数组项放在一列中。最后按此列分组并进行计数.

关于hadoop - 针对特定场景的 Hive 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29295900/

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