在 Hive 中合并 returns null
Coalesce in Hive returns null
我想取第一个非缺失值:
它不能正常工作
,coalesce(var1,var2,var3)
虽然
var1=null
var2=null
var3=variable
由于合并,我得到了 null。
两种可能。首先是三个都是null
。您可以通过添加第四个默认值来测试它是否被选中。
我怀疑是第二种可能性——null
真的是 'null'
。如果是这样,coalesce()
将不会直接起作用。
如果是这种情况,您可以使用 nullif()
或 case
表达式:
coalesce(case when var1 <> 'null' then var1 end),
case when var2 <> 'null' then var2),
var3)
我想取第一个非缺失值:
它不能正常工作
,coalesce(var1,var2,var3)
虽然
var1=null
var2=null
var3=variable
由于合并,我得到了 null。
两种可能。首先是三个都是null
。您可以通过添加第四个默认值来测试它是否被选中。
我怀疑是第二种可能性——null
真的是 'null'
。如果是这样,coalesce()
将不会直接起作用。
如果是这种情况,您可以使用 nullif()
或 case
表达式:
coalesce(case when var1 <> 'null' then var1 end),
case when var2 <> 'null' then var2),
var3)