hive常用函数之六条件函数

本文详细介绍了Hive中常用的四种条件函数:If函数、非空查找函数COALESCE、两种形式的CASE条件判断函数。通过具体的语法和实例,帮助读者更好地理解和使用这些函数。

六、条件函数

1. If函数: if

语法: if(boolean testCondition, T valueTrue, T valueFalseOrNull)

返回值: T

说明: 当条件testCondition为TRUE时,返回valueTrue;否则返回valueFalseOrNull

举例:

hive> select if(1=2,100,200) from lxw_dual;

200

hive> select if(1=1,100,200) from lxw_dual;

100

2. 非空查找函数: COALESCE

语法: COALESCE(T v1, T v2,…)

返回值: T

说明: 返回参数中的第一个非空值;如果所有值都为NULL,那么返回NULL

举例:

hive> select COALESCE(null,‘100’,'50′) from lxw_dual;

100

3. 条件判断函数:CASE

语法: CASE a WHEN b THEN c [WHEN d THEN e]* [ELSE f] END

返回值: T

说明:如果a等于b,那么返回c;如果a等于d,那么返回e;否则返回f

举例:

hive> Select case 100 when 50 then ‘tom’ when 100 then 'mary’else ‘tim’ end from lxw_dual;

mary

hive> Select case 200 when 50 then ‘tom’ when 100 then 'mary’else ‘tim’ end from lxw_dual;

tim

4. 条件判断函数:CASE

语法: CASE WHEN a THEN b [WHEN c THEN d]* [ELSE e] END

返回值: T

说明:如果a为TRUE,则返回b;如果c为TRUE,则返回d;否则返回e

举例:

hive> select case when 1=2 then ‘tom’ when 2=2 then ‘mary’ else’tim’ end from lxw_dual;

mary

hive> select case when 1=1 then ‘tom’ when 2=2 then ‘mary’ else’tim’ end from lxw_dual;

tom

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值