日期:2014-05-17  浏览次数:20796 次

存储过程里的sql问题,急,在线等!~
请教一下大家一个查询条件怎么写

简要如下:
r_brchno varchar2(12);
l_brchno varchar2(12);

l_brchno := nvl(r_brchno,'%')

select * from table_name where brchno like l_brchno;  

r_brchno为用户传进来的字段,为一个可选条件,用户如果不输则这个字段是以null传进来的,那么sql就变成
select * from table_name where brchno like '%'; 

本来应该是查全部的,但在表里brchno有空值存在,这样的话空值就查不出来了

注释:可选条件不至1个,字段在表里都有空值存在,想问下大家怎么处理才能把数据全部查出来啊



------解决方案--------------------
SQL code

--改为 
select * from table_name where nvl(brchno,0) like '%';