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 
版权声明:本文为博主原创文章,转载请附上博文链接!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值