Mybatis 模糊查詢和精確查詢

一 模糊查詢

sql語法: like concat()

概念:
concat: 可以連接一個或者多個字符串,若其中一個爲null,則返回null
用concat(org1,org2,…)將 %與 #{name}與連接在一起,避免將sql中%放到java代碼中

語法:
mysql中是不支持concat(’%‘,結果集,’%‘)這種語法的,
但是支持concat(’%‘,字段,’%‘)

舉例:
(1) sql

SELECT * FROM User
WHERE username LIKE CONCAT('%',#{username}),'%')

(2) mybatis

SELECT * FROM User
WHERE 1 = 1
<if  test="keyword!= null  and keyword != '' ">
	 AND username LIKE CONCAT('%',CONVERT(#{keyword} USING utf8),'%')
</if>

二 精確查詢: 使用等於號=

(1) sql

SELECT * FROM User
WHERE username = #{username})

(2) mybatis

SELECT * FROM User
WHERE 1 = 1
<if  test="keyword != null and keyword != '' ">
	 AND username = #{username}
</if>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章