hive函數詳解----條件函數詳解

條件函數微信

1. If函數: if函數

語法: if(boolean testCondition, T valueTrue, T valueFalseOrNull)spa

返回值: Torm

說明:  當條件testCondition爲TRUE時,返回valueTrue;不然返回valueFalseOrNullget

舉例:it

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

200test

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

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

更多精彩內容請關注:http://bbs.superwu.cn

關注超人學院微信二維碼:

相關文章
相關標籤/搜索