hive函数之~条件函数

Posted lojun

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了hive函数之~条件函数相关的知识,希望对你有一定的参考价值。

1、If函数: if  ***

语法: if(boolean testCondition, T valueTrue, T valueFalseOrNull)
返回值: T
说明: 当条件testCondition为TRUE时,返回valueTrue;否则返回valueFalseOrNull

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

200

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

100

2、非空查找函数: COALESCE

语法: COALESCE(T v1, T v2, …)
返回值: T
说明: 返回参数中的第一个非空值;如果所有值都为NULL,那么返回NULL

hive> select COALESCE(null,‘100‘,‘50‘) from tableName;

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 tableName;

mary

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

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 tableName;

mary

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

tom

以上是关于hive函数之~条件函数的主要内容,如果未能解决你的问题,请参考以下文章

hive中条件判断函数if/COALESCE/CASE/

2021年大数据Hive:Hive的内置函数(数学字符串日期条件转换行转列)

我的Android进阶之旅NDK开发之在C++代码中使用Android Log打印日志,打印出C++的函数耗时以及代码片段耗时详情

如何有条件地将 C 代码片段编译到我的 Perl 模块?

Hive 常用函数汇总

MySQL/ Hive:使用窗口或分析函数连接条件行