mybatis单条件模糊匹配
时间: 2023-09-29 19:02:55 浏览: 33
在 MyBatis 中,可以使用 `LIKE` 关键字进行模糊匹配。如果你只需要单条件模糊匹配,可以使用以下方式:
```xml
<select id="selectByKeyword" parameterType="java.lang.String" resultType="com.example.User">
SELECT * FROM user WHERE username LIKE CONCAT('%',#{keyword},'%')
</select>
```
其中,`#{keyword}` 是传入的关键字参数。
在 SQL 语句中,使用 `CONCAT()` 函数将 `%` 和关键字拼接起来,以实现模糊匹配。注意,`CONCAT()` 函数的参数顺序是从左到右的,因此 `%` 需要放在左侧。
如果需要多条件模糊匹配,可以在 WHERE 子句中添加多个条件,并使用 `AND` 连接它们。例如:
```xml
<select id="selectByKeywords" parameterType="map" resultType="com.example.User">
SELECT * FROM user WHERE username LIKE CONCAT('%',#{username},'%') AND email LIKE CONCAT('%',#{email},'%')
</select>
```
其中,传入的参数为一个 `Map` 对象,包含 `username` 和 `email` 两个键值对。在 SQL 语句中,使用 `AND` 连接两个模糊匹配条件。