小弟我搞了一个查询的栏目,目前有搜索商品名,大于和小于的价格区间,商品种类,现在有个问题就是sql查询语句不知道怎么写,用and的话要是3个其他2个或1个没填写,那么它不是自动默认为空?那这样又搜索不到数据了,用or的话当3个都有选的时候又体现不出3个要求都有的情况~~!该怎么做才好?各位大大帮忙下

解决方案 »

  1.   

    全用AND,用IF做参数判断,如果有的话,就添加相应SQL条件,如果没有,就不添加。
      

  2.   

    and
    然后根据情况,拼接SQL,如果为空的话可以拼个1=1
      

  3.   

    在 select * from table 
    价格 where 1 = 1 
    然后 用and 拼接 sql。 这是最常做的办法
      

  4.   

    select * from tb where 1=1
    接着是判断条件(参数)是否为空
    不为空就and拼接