一 模糊查詢
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>