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 值。spa

select nvl(a.name,'空得') as name from student a join school b on a.ID=b.IDcode

注意:兩個參數得類型要匹配blog

 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 ,便於查看,也便於運算。io

相關文章
相關標籤/搜索