hive之coalesce函数与nvl函数

本文介绍了Hive中的nvl函数,用于处理空值,返回默认值。同时探讨了coalesce函数在处理多表联合查询中的应用,特别是在full join时可能出现的性能问题。通过实例展示了不同情况下使用coalesce导致的不同查询耗时,提示在实际操作中需要注意性能优化。
摘要由CSDN通过智能技术生成

在这里插入图片描述

函数 nvl()

如果为空,则返回default值。

nvl(value,default_value) - Returns default value if value is null else returns value
select nvl(null,0);

结果是0

coalesce()函数的使用

在这里插入图片描述

表A 数据如下:

SLRQ SLAJS
2020-01 30

表B 数据如下:

SLRQ CHAJS
2020-01 56
2020-02 24

表C数据如下:

CLRQ DCAJS
2020-03 56
2020-04 23
2020-05 34

想要最后的结果是:

RQ SLAJS CHAJS DCAJS
2020-01 30 12 0
2020-02 0 24 0
2020-03 0 0 56
2020-04 0 0 23
2020-05 0 0 34

使用sql:

SELECT  COALESCE(A.SLRQ,B.SLRQ,C.CLRQ
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值