你参照我的看看:
      strsql = "select * from table1 where 1 = 1 "      if trim(request("n"))<>"" then
       strsql = strsql &" and n like '%" &trim(request("n")) &"%'"
      end if      if trim(request("b"))<>"" then
       strsql=strsql & " and b like '%" &trim(request("b")) & "%'"
      end if      if trim(request("lessor"))<>"" then
       strsql=strsql & " and c like '%" &trim(request("c")) & "%'"
      end if

解决方案 »

  1.   

    以3个为例,更多个可以用同样的方法扩展
    String f1=request.getParameter("f1");
    String f2=request.getParameter("f2");
    String f3=request.getParameter("f3");
    String sql="select * from tablename where 1=1 ";
    if(!f1.trim().equals(""))
      sql+=" or fieldname1='"+f1+"' ";
    if(!f2.trim().equals(""))
      sql+=" or fieldname2='"+f2+"' ";
    if(!f3.trim().equals(""))
      sql+=" or fieldname3='"+f3+"' ";
    Result rs=stm.executeQuery(sql);
      

  2.   

    楼上那位是jsp吗,应该是asp吧
      

  3.   

    如果where后的第一个条件不确定尽量找一个肯定用到的条件这样下面就好处理了:1 if()
      and
    2 if()
      and
    ...........