ORACLE NVL函數 (IFNULL)


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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM