vc做的管理系统中如果要按条件查询,现在有四个查询条件,当然四个条件可以有空的条件,这种情况难道要判断2*2*2*2=16次,有没有别的什么方法?

解决方案 »

  1.   

    例如a,b,c,d表示四个查询条件,a,b,c,d不能同时为空
    if((NULL == a) && (NULL ==b) && (NULL == c) && (NULL ==d))
    {}
    else // 不同时为空的情况
    {}
      

  2.   

    接楼上的思路
    不空的时候你就加条件
    第一个条件的前不加and就可以了
      

  3.   

    我也想知道。其实,这种情况,在数据库里用SQL语句也是要判断的,不要嫌麻烦,就多敲几行代码而已,别老想着偷懒~
      

  4.   

    最简单的方法是使用字符串拼接,并且如果为NULL 则将其置成where 1=1,此种做法缺点:
    1.数据不安全,有注入漏洞
    2.1=1降低效率
    唯一的优点是毕设里可以减少代码量
      

  5.   

    君哥是这个意思:例如有个人名表,FNAME ,FAGE
    假如你选择了要按年龄条件搜索select * from t_人名表 where FAGE>30;
    如果不选择条件就变成这个样子select * from t_人名表 where 1=1; 我理解应该是这样的