知网多条件查询实现中的小问题及技巧

web开发中的多条件查询处理技巧1则 

select * from t_test where f1=#param1# and (f2>#param2# or f3<#param3#) 

如果输入参数为空,则相应的条件用恒等式代替,如1>0 

当param2为空时(null或“”) 

上述语句变为 

select * from t_test where f1=#param1# and (1>0 or f3<#param3#) 



这样就不用关心括号,and ,or了, 
只要一开始把条件都写全就OK了 


sql = "select * from t_test where f1=#param1# and (1>0 or f3<#param3#)"; 
sql.replaceAll("#param_name#",request.getParameter("param_name").trim()); 

在此之前还得把输入的SQL语句动点小手术,如去掉多余的空格等,
posted @ 2022-12-15 16:25  薛定谔的小冰  阅读(54)  评论(0)    收藏  举报