gpt4 book ai didi

sql - Hive 划分同一列的数字

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

我有这样的表:

A |  null   |  15
A | X | 30
B | null | 10
B | Y | 20

我想创建一个查询来划分 A 的数字,B 的数字相同等等,所以输出应该是:

row1 | 2
row2 | 2

考虑到我需要在单个查询中进行大约 20 次这样的计算,在 Hive 中处理此问题的最有效方法是什么?

编辑:我总是有两行,一行是参数为空的行数,另一行是非空参数的数。我需要得到利率。

最佳答案

select      col1
, max(case when col2 is not null then col3 end)
/ nullif(max(case when col2 is null then col3 end),0) as results
from mytable

group by col1
;

对于@vkp

hive> select 1/0;
OK
NULL

关于sql - Hive 划分同一列的数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41165708/

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