最笨的方法就是判断,然后根据不同的条件写不同的sql

解决方案 »

  1.   

    你也可以在前台把WHERE条件生成,在存储过程中只需把WHERE条件作为参数传入即可
      

  2.   

    create procedure pro(p_aaa in varchar2,p_bbb in varchar2,p_ccc in varchar2)
    as
    num number;
    begin
    select count(1) into num from tabname where nvl2(p_aaa,aaa,1)=nvl(p_aaa,1) and nvl2(p_bbb,bbb,1)=nvl(p_bbb,1) and nvl2(p_ccc,ccc,1)=nvl(p_ccc,1);
    end;
    /