mybatis where标签使用案例
时间: 2023-07-02 14:05:16 浏览: 123
MyBatis 的 where 标签用于在动态 SQL 查询中添加 WHERE 子句。如果在 WHERE 子句之前没有任何查询条件,则 where 标签会自动添加 WHERE 关键字,并且只会包含满足查询条件的语句。
下面是一个使用 MyBatis where 标签的示例:
```xml
<select id="selectByCondition" resultType="User">
SELECT * FROM user
<where>
<if test="name != null">
AND name = #{name}
</if>
<if test="age != null">
AND age = #{age}
</if>
<if test="gender != null">
AND gender = #{gender}
</if>
</where>
</select>
```
上面的示例中,where 标签包含了多个 if 标签,每个 if 标签都表示一个查询条件。如果查询条件不为 null,则会将查询条件添加到 WHERE 子句中。
例如,如果传入的查询条件为 name="Tom",那么生成的 SQL 语句为:
```sql
SELECT * FROM user
WHERE name = 'Tom'
```
如果传入的查询条件为 age=20,那么生成的 SQL 语句为:
```sql
SELECT * FROM user
WHERE age = 20
```
如果传入的查询条件为 name="Tom" 并且 age=20,那么生成的 SQL 语句为:
```sql
SELECT * FROM user
WHERE name = 'Tom' AND age = 20
```
这样,就可以方便地在动态 SQL 查询中添加 WHERE 子句,并且只包含满足查询条件的语句。
阅读全文