这是一个if ....else 的缩写

解决方案 »

  1.   

    如果strSHBZ=="" && strYWLX=="" && strDWBH==""的条件为真,查询的条件where 为空。
    为假条件就是:号后面这些。依次类推。
      

  2.   

    这是一个三目运算符,如果strSHBZ=="" && strYWLX=="" && strDWBH=="")成立,那么就没有where,也就是说你的SQL语句就是select,KPDJ_DJBH,KPDJ_CKCKBH,KPDJ_RKCKBH,KPDJ_ZDRMC,KPDJ_BZ,KPDJ_BH from 表,如果strSHBZ=="" && strYWLX=="" && strDWBH=="")不成立,那么你的SQL查询就得加上后面的where限制条件,我是这么理解,请各位高手指教!
      

  3.   

    ( ? : )是一个三目运算符
    ((strSHBZ=="" && strYWLX=="" && strDWBH=="")?"":" where ") 
    (strSHBZ==""?"":" KPDJ_SHBZ='" + strSHBZ + "'" + (strSHBZ==""?"":" and "))  
    (strYWLX==""?"":" KPDJ_YWLX in(select YWLX_BH from YWLX where YWLX_DJBZ in (" + strYWLX "))")
    (strDWBH==""?"":" and KPDJ_DWBH='" + strDWBH + "'")
    分别是四个表达式,构成你sql语句的where条件,如果每个的?前的条件语句是true则是空格"",否则就是:后面的字符串