Oracle函數——COALESCE


COALESCE

  • 含義:COALESCE是一個函數, (expression_1, expression_2, ...,expression_n)依次參考各參數表達式,遇到非null值即停止並返回該值。如果所有的表達式都是空值,最終將返回一個空值。使用COALESCE在於大部分包含空值的表達式最終將返回空值。
  • 用法:COALESCE(expression_1, expression_2, ...,expression_n)
  • 例子
    1.SELECT COALESCE(NULL,NULL,3,4,5) FROM dual  
    其返回結果為:
    3

    2.SELECT A.ID,SUM(COALESCE(A.SHUL,0)+COALESCE(A.PZSHUL,0)) from t_order as A group by A.ID
    這樣就不會因為數據庫中的值為NULL而計算錯誤
  • 返回值:返回第一個非NULL表達式的類型
  • 擴展
    COALESCE(expression1,...n) 與此 CASE 函數等價:
    CASE
    WHEN (expression1 IS NOT NULL) THEN expression1
    ...
    WHEN (expressionN IS NOT NULL) THEN expressionN
    ELSE NULL
  • 注意
    • 空值加任何值都是空值,空值 乘任何值也都是空值,依此類推。
    • 所有表達式必須是相同類型,或者可以隱性轉換為相同的類型。
  • Next


免責聲明!

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



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