hive中的null值处理函数nvl、nvl2、if、 coalesce

目录

一、nvl函数

二、nvl2函数

三、if函数

四、coalesce函数


一、nvl函数

--若第一个表达式不为null则返回expr1,否则返回expr2
语法:NVL(expr1,expr2)

--例子:
1、select NVL(null,2)  from tb
result:2
2、select NVL2(1,2)  from tb
result:1

二、nvl2函数

--若第一个表达式不为null则返回expr2,否则返回expr3
语法:NVL2(expr1,expr2,expr3)

--例子:
1、NVL2(null,2,3)
result:3
2、NVL2(1,2,3)
result:2
--------------------------------
兼容性:Oracle 和 IBM DB2。

三、if函数

--若第一个表达式为true则返回expr2,否则返回expr3
语法:if(expr1,expr2,expr3)

--例子:
1、if(0=1,2,3)
result:3
2、NVL2(0<>1,2,3)
result:2

四、coalesce函数

--coalesce函数返回第一个不为null的表达式
语法:coalesce(expr1,expr2,expr3)

--例子:
1、coalesce(null,2,3)
result:2
2、NVL2(1,2,3)
result:1
----------------------
兼容性:Oracle、IBM DB2、Teradata、Microsoft SQL Server、PostgreSQL、MySQL 和 Netezza

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值