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语法和函数的使用可能因数据库类型而有所差异,需要根据实际情况进行调整。