impala中的條件判斷

2021-09-27 06:53:33 字數 1053 閱讀 4211

coalesce(x,y,z,..)

返回輸入引數中的第乙個非空值,如果所有輸入引數均為null,則返回null

if(boolean表示式,真時返回值,假或null時候的返回值)

根據乙個表示式的結果為true、 false、null,來返回相應的結果值。返回型別與輸入引數型別相同。

(5)isnull(x, y) 等價與ifnull(x,y)如果表示式的結果非空,則返回x取值。如果表示式的結果為null,則返回第二引數y值。與 oracle中的nvl(x,y)和mysql中的ifnull(x,y)用法相同

特殊語句

(7)nullif(expr, expr2)這個函式表示如果兩個表示式相等,則返回null。如果兩個表示式不相等,則返回第一表示式的值。兩個表示式的資料型別必須保持相容。另外,第乙個表示式不能為null,如果它為nul,將永遠不會與第二個表示式進行匹配。

該函式通常被使用在除法表示式中來防止被除數為零的情況。例如select 1.0 /nullif(expr,0) as rate from table_***xx 

(8) nullifzero(numeric expr)如果表示式為0,則返回null;如果表示式為非零,則返回表示式本身。返回型別與原始的返回值型別相同。返回值若是整型會被提公升為 bigint型,若是 float型會被提公升為 double型。如果對應的列不允許像bigint或者 double這樣的高精度的型別,需要使用 cast()函式進行強制型別轉換。 

nvl(x,y) 當x is not null則返回x 取值,否則返回y取值

——————————————————————————————————————————

zeroifnull(numeric expr如果表示式為null,則返回0,如果表示式為非null,則返回表示式本身

Impala 條件函式

支援的條件函式列表 case 標準通用的函式 coalesce 標準通用函式 decode oracle和impala專用函式 if impala和mysql的函式 ifnull impala和mysql的函式 isfalse isnotfalse isnottrue isnull istrue n...

impala條件查詢問題

使用 impala 查詢hbase 時,如果是 條件查詢,如果不新增 is not null 條件,則會把該列沒有值的記錄也查詢出來 空字串不會 比如 select from user where name xiao wang 該語句會查詢出 name 等於xiao wang 和null 的資料。s...

jst中,if的判斷條件

1 布林變數true false 2 數字非0,非nan 0 或nan 3 物件非null null或undefined 4 字串非空串 空串 字串 if str 對於數字 if isnan a if foo bar else baz foo?bar baz if foo bar else baz ...