select a,b,c from test where b>100 and  a=nvl('c',a);

解决方案 »

  1.   

    select * from bgvm5503 where (pass>=1 and  (inipass like ( case when inipass='' then '%' else inipass))
      

  2.   

    select * from bgvm5503 t 
    where (pass>=1 or (trim(inipass) is null))
      

  3.   

    已经解决,可以这样写
    where (trim(FILED) is null)) or FILED(CHECK CONDITION)) 
    example
    select * from bgvm5503 t 
    where (pass>=1 or (trim(inipass) is null))