项目场景:
数据库均为ORACLE数据库
需要在原来的一段sql中过滤掉一个条件,所以就在原来的基础上使用了not like
问题描述
但是使用not like 之后会把这个字段为空的也过滤掉,导致数据不能正常传输
原sql如下
过滤掉为PRO的数据
select * from tmp_ceshi1 where BRANCHID not like 'PRO'
显示结果如下,导致为空的那一条也过滤掉了
原因分析:
not like 不取为空值的数据
解决方案:
select * from tmp_ceshi1 where nvl(BRANCHID,0) not like 'PRO'
用一个函数目前可以解决