Oracle null值处理

Oracle null值处理

数据库处理null值特点:除了nvl()函数以及 || 之外,任何函数、运算符遇到值为 null 或者 ‘’ 的数据都会被过滤掉 备注:oracle数据库中 null 等价于 ‘’

with T as (SELECT '101' ID,null as the_name from dual)
SELECT 1 "序号",count(*) NUM FROM T union all
SELECT 2,count(the_name) NUM FROM T union all
SELECT 3,count(*) NUM FROM T WHERE T.the_name = '' union all
SELECT 4,count(*) NUM FROM T WHERE T.the_name != 'XXX' union all
SELECT 5,count(*) NUM FROM T WHERE instr(T.the_name,'XXX') = instr(T.the_name,'XXX') union all
SELECT 6,count(*) NUM FROM T WHERE T.the_name = T.the_name 

运行结果
在这里插入图片描述
总结
想要判断null 只能用 is null 或者 nvl(字段,非空特定字符) = 非空特定字符
同理判断非null用 is not null 或者 nvl(字段,非空特定字符) != 非空特定字符

但是在修改或插入数据的时候需要用 "="等号赋值而不能用 is null
update Table SET name = NULL WHERE id = 1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值