SQL Server裏的 ISNULL 與 NULLIF

ISNULL(check_expression, replacement_value)

check_expression 與 replacement_value 數據類型必須一致,如果 check_expression 爲 NULL,則返回 replacement_value,如果check_expression 不爲 NULL,則返回 check_expression


NULLIF(expression, expression)

如果兩個 expression 相等,則返回 NULL,該 NULL 爲第一個 expression 的數據類型,如果兩個 expression 不相等,則返回第一個 expression 


NULLIF:需要兩個參數,如果兩個指定的表達式等價,則返回null 
例子:NULLIF(a,b) 
說明:如果a和b是相等的,那麼返回NULL,如果不相等返回a 
select NULLIF('eqeqweqwe','1') 結果是eqeqweqwe 
select NULLIF(1,1) 結果是NULL 

a和b的類型要一致 


ISNULL:需要兩個參數,目標是講null替換爲指定的值,若第一個參數不爲null,則返回第一個參數
例子:ISNULL(a,b) 
說明:如果a和b同時爲NULL,返回NULL,如果a爲NULL,b不爲NULL,返回b,如果a不爲NULL,b爲NULL返回a,如果a和b都不爲NULL返回a 
select ISNULL(null,null)結果是null 
select ISNULL(null,33)結果是33 
select ISNULL('ddd',null)結果是ddd 

select ISNULL(44,33)結果是44


isnumeric:確認表達式是否爲有效的數字形式
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章