兩種根據關鍵字查詢的方法SQL


1.

<if test="keyword!=null and keyword!=''">
AND (m.matnr LIKE concat('%',#{keyword,jdbcType=VARCHAR},'%')
OR m.maktx LIKE concat('%',#{keyword,jdbcType=VARCHAR},'%')
OR ub.barcode LIKE concat('%',#{keyword,jdbcType=VARCHAR},'%')
OR uc.barcode LIKE concat('%',#{keyword,jdbcType=VARCHAR},'%')
OR uf.barcode LIKE concat('%',#{keyword,jdbcType=VARCHAR},'%')
OR m.`type` LIKE concat('%',#{keyword,jdbcType=VARCHAR},'%')
OR t.`name` LIKE concat('%',#{keyword,jdbcType=VARCHAR},'%')
OR m.`kondm` LIKE concat('%',#{keyword,jdbcType=VARCHAR},'%')
OR b.`name` LIKE concat('%',#{keyword,jdbcType=VARCHAR},'%')
OR f.`row_id` LIKE concat('%',#{keyword,jdbcType=VARCHAR},'%')
OR f.`name` LIKE concat('%',#{keyword,jdbcType=VARCHAR},'%')
)
</if>

2.
<if test="pBrandName != null and pBrandName.trim() != ''">
<bind name="pBrandName" value="'%' + pBrandName + '%'"/>
and (bfb.name like #{pBrandName} or c.kondm like #{pBrandName} or TG.name like #{pBrandName})
</if>
bind 標簽的兩個屬性都是必選項, name 為綁定到上下文的變量名, value 為 OGNL 表
達式。創建一個 bind 標簽的變量后 , 就可以在下面直接使用,使用 bind 拼接字符串不僅可
以避免因更換數據庫而修改 SQL,也能預防 SQL 注入。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM