MyBatis模糊查詢語句可以通過使用LIKE
關鍵字來進行實現。以下是一種使用MyBatis實現模糊查詢的方式:
<!-- 定義查詢語句 -->
<select id="searchUsers" parameterType="String" resultType="User">
SELECT * FROM user
WHERE username LIKE CONCAT('%', #{keyword}, '%')
</select>
在上述示例中,searchUsers
是查詢語句的唯一標識符,username
是需要模糊匹配的字段名,#{keyword}
是通過參數傳遞的模糊查詢關鍵詞。
調用該查詢語句的代碼如下:
public List<User> searchUsers(String keyword) {
try (SqlSession sqlSession = sqlSessionFactory.openSession()) {
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
return userMapper.searchUsers(keyword);
}
}
在上述代碼中,searchUsers
方法接受一個關鍵詞作為參數,并通過UserMapper
接口的searchUsers
方法執行模糊查詢。
注意:上述示例中使用了CONCAT
函數來構造模糊查詢的條件,該函數用于拼接字符串,以實現在關鍵詞的兩側添加%
,從而實現模糊匹配。具體的SQL語法和函數的使用可能因數據庫類型而有所差異,需要根據實際情況進行調整。