Hive的条件函数、聚合函数(UDAF)和制表函数(UDTF)

本文介绍了Hive中的条件函数,如If、COALESCE、CASE等,以及聚合函数,如count、sum、avg、min、max、var_pop等,并提供了相应的使用示例。此外,还提到了Hive的UDTF,如explode函数用于数组和Map的拆分。
摘要由CSDN通过智能技术生成

一、条件函数

1. If 函数: if

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

返回值: T

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

举例:

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

200

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

100

2. 非空查找函数: COALESCE

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

返回值: T

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

举例:

hive> select COALESCE(null,'100','50′) from test;

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

test;

mary

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

test;

tim

4. 条件判断函数:CASE

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

返回值: T

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

举例:

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值