Oracle 數據庫中null字段賦值方法

最近做數據遷移工作,某個字段在源表中可爲空,在目標表中不能爲空。遷移數據的時候需要給查出的空值賦一個默認值。

用到的函數爲:

NVL(expr1,expr2)
expr1:可爲空的字段或者表達式。
expr2:null的替代值。

含義:如果表達式 expr1 爲空(NULL),則顯示錶達式 expr2 的值,若非空,則顯示expr1 的值。

select parentid,NVL(parentid,999) from PROPERTYRELATION  (下圖第一列是原始數據,第二列是轉化後的數據,本例中該字段是數據。若爲字符串,則999需要加上單引號,'999')

類似的函數有:

NVL2(expr1,expr2, expr3)

含義:若第一個參數爲空,則顯示二個參數的值;若第一個參數不爲空,則顯示第三個參數的值。

NULLIF(exp1,expr2)

含義:如果第一個參數和第二個參數相等,則顯示空;否則顯示第一個參數的值。

COALESCE (expression_1, expression_2, ...,expression_n)

含義:依次參考各參數表達式,遇到非null值即停止並顯示該值。如果所有的表達式都是空值,最終將顯示一個空值。
--------------------- 
作者:帥師傅 
來源:CSDN 
原文:https://blog.csdn.net/shuaishifu/article/details/37062049 
版權聲明:本文爲博主原創文章,轉載請附上博文鏈接!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章