mysql模糊查询 mybatis
时间: 2023-10-29 09:07:19 浏览: 210
mybatis模糊查询
5星 · 资源好评率100%
在 MyBatis 中,你可以使用模糊查询来搜索满足特定条件的数据。MyBatis 提供了两种方式来实现模糊查询:使用 `%` 或者使用 `<if>` 元素。
第一种方式是使用 `%` 在 SQL 语句中进行模糊查询。例如,假设你要根据用户名中包含某个关键字来查询用户列表,你可以使用如下的 SQL 语句:
```xml
<select id="getUserList" resultType="User">
SELECT * FROM user WHERE username LIKE CONCAT('%', #{keyword}, '%')
</select>
```
在这个例子中,`#{keyword}` 是传入的搜索关键字参数。通过使用 `%` 和 `CONCAT` 函数,可以在查询中实现模糊匹配。
第二种方式是使用 `<if>` 元素来动态拼接 SQL 语句。例如,如果你想根据用户名和年龄进行模糊查询,但只有在传入的参数不为空时才添加对应的条件,你可以使用如下的 SQL 语句:
```xml
<select id="getUserList" resultType="User">
SELECT * FROM user
<where>
<if test="username != null and username != ''">
AND username LIKE CONCAT('%', #{username}, '%')
</if>
<if test="age != null">
AND age = #{age}
</if>
</where>
</select>
```
在这个例子中,`<if>` 元素会根据条件判断是否添加相应的 SQL 语句片段。这样可以根据传入的参数动态构建查询条件。
这些是 MyBatis 中实现模糊查询的两种常见方式。你可以根据具体的需求选择适合的方式来完成模糊查询操作。
阅读全文