1. 程式人生 > >MyBatis動態SQL小tips

MyBatis動態SQL小tips

  <!--待修復的任務/查詢/模糊查詢/按companyId查詢-->
  <select id="needRepairLikeQuery_listPage" parameterType="page" resultType="pd">
    SELECT
    cl.id AS id,
    cl.col_borrowerName AS colBorrowername,
    cl.col_borrowerIdcard AS colBorroweridcard,
    cl.qq AS qq,
    cl.phone AS phone,
    cc.com_name AS comName,
    ci.down_report_count AS downReportCount
    FROM
    com_customer_company_c_index AS ci INNER JOIN col_loan AS cl ON cl.id = ci.clid
    INNER JOIN com_company AS cc ON cl.col_company =cc.com_id
    <if test="pd.search != null and pd.search.length()>0">
      WHERE cl.col_borrowerName LIKE '%${pd.search}%' OR
      cl.col_borrowerIdcard LIKE '%${pd.search}%' OR
      cl.phone LIKE '%${pd.search}%'
    </if>
    <if test="pd.companyId!=null and pd.companyId != '-1'">
      AND
      cl.col_company = '${pd.companyId}'
    </if>
    AND
    cl.col_status = 0
    ORDER BY cl.id DESC
  </select>

1/<if test="">中的多條件用and/or連結而非&&\||

2/有時候""是不等於null的,用String的.length()限制一下