hive函数之~条件函数
1、If函数: if ***
语法: if(boolean testCondition, T valueTrue, T valueFalseOrNull)
返回值: T
说明: 当条件testCondition为TRUE时,返回valueTrue;否则返回valueFalseOrNull
|
2、非空查找函数: COALESCE
语法:
COALESCE(T v1, T v2, …)
返回值: T
说明: 返回参数中的第一个非空值;如果所有值都为NULL,那么返回NULL
|
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