數據庫 空轉化為默認值0的方法 學習 -开发者知识库

數據庫 空轉化為默認值0的方法 學習 -开发者知识库,第1张

Oracle :
Nvl
NVL函數:
NVL函數是將NULL值的字段轉換成默認字段輸出。

NVL(expr1,expr2)
expr1,需要轉換的字段名或者表達式。
expr2,null的替代值

下面是NUMBER, DATE, CHAR OR VARCHAR2的例子: 
NVL(commission_pct,0)
NVL(hire_date,'01-JAN-97')
NVL(job_id,'No Job Yet')


Sql Server:
IsNull
如果是Null,就返回指定的值,否則返回原值。 

select userName,IsNULL(address,'無') from [user]... 

------------------------------------------------------------------ 
NullIF
會在兩個值(或者表達式)相等的時候返回null,否則返回第一個參數。 

select Sum(NullIf(price,100)) from ... 

如果價格是100,就當null處理,sum()會忽略null值,所以...
 

---------------------------------------------------------------------- 
COALESCE
會返回第一個非空的值,參數是任意多個。 

select Coalesce(homephone,officePhone,mobile) from.... 

只要有一個電話號碼被填寫了,就一定會返回一個值。 
-----------------------------------------------------------------------

Access:
Nz
同Sql Server IsNull。只能在Access程序中使用,Jet ADO不支持
select userName,Nz(address,'無') from [user]... 

IIF
select userName,IIF(address is null,'無',address) from [user]... 

select userName,IIF(address is null,'沒寫','寫了') from [user]... 

最佳答案:

本文经用户投稿或网站收集转载,如有侵权请联系本站。

发表评论

0条回复