Oracle的NVL函數用法
從兩個表達式返回一個非 null 值。
語法
NVL(eExpression1, eExpression2)
參數
eExpression1, eExpression2
如果 eExpression1 的計算結果為 null 值,則 NVL( ) 返回 eExpression2。如果 eExpression1 的計算結果不是 null 值,則返回 eExpression1。eExpression1 和 eExpression2 可以是任意一種數據類型。如果 eExpression1 與 eExpression2 的結果皆為 null 值,則 NVL( ) 返回 .NULL.。
返回值類型
字符型、日期型、日期時間型、數值型、貨幣型、邏輯型或 null 值
說明
在不支持 null 值或 null 值無關緊要的情況下,可以使用 NVL( ) 來移去計算或操作中的 null 值。
select nvl(a.name,'空得') as name from student a join school b on a.ID=b.ID
注意:兩個參數得類型要匹配
1 SELECT T.D_FDATE, 2 T.VC_ZHCODE, 3 NVL(SUM(T.F_FZQSZ), 0) f_price_b, 4 NVL(SUM(T.F_FZQCB), 0) f_cost_b, 5 NVL(SUM(T.F_FGZ_ZZ), 0) f_gz_b, 6 NVL(SUM(T.F_FYZQSZ), 0) f_price_Y, 7 NVL(SUM(T.F_FYZQCB), 0) f_cost_Y, 8 NVL(SUM(T.F_FYGZ_ZZ), 0) f_gz_Y, 9 T.VC_SOURCE, 10 SYSDATE d_updatetime 11 FROM GZ_FUND_GZB T
比如這樣的判斷就很重要啦,因為你不知道哪一行是 is not null 的,也不知道接下來是否要對這個單元格進行運算操作,因此,不能給列填 null,就給它一個 0 ,便於查看,也便於運算。
轉載自 https://www.cnblogs.com/yhoralce/p/6872121.html