Oracle数据库空字符串和空字符串比较的问题


今天在公司遇到了一个问题,页面上传输回来的值总是有问题,一路排查下来发现是sql出现了,查看sql中发现从页面上传回来了两个值都是空的,就是''这个样子的。然后再对这个两个值进行了等于判断''=''

然后Oracle返回的是false。

举例: 

select 
* 
from emp
where 1=1

结果:

然后我们更变条件变成 ''=''

select 
* 
from emp
where ''=''

结果:

解决方法:使用nvl()函数来处理

select 
* 
from emp
where nvl('',0)=nvl('',0)

结果:

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM