mybatis if test 用法
时间: 2023-04-28 11:05:02 浏览: 123
Mybatis 中的 if 标签用于在 SQL 语句中进行条件判断。使用方法是在 SQL 语句中插入一个 `<if>` 标签,并在标签中定义 test 属性,test 属性的值为一个表达式,表示当该表达式为 true 时,该标签内部的 SQL 语句才会执行。
语法示例:
```
<select id="selectUser" resultType="hashmap">
SELECT * FROM users
<if test="name != null">
WHERE name = #{name}
</if>
</select>
```
在上面的示例中,当传入的参数中的 name 属性不为空时,WHERE name = #{name} 会被添加到 SQL 语句中执行。
还可以使用elseif 和else 来实现更为复杂的条件判断,来满足多种情况。
```
<select id="selectUser" resultType="hashmap">
SELECT * FROM users
<if test="name != null">
WHERE name = #{name}
</if>
<if test="age != null">
WHERE age = #{age}
</if>
<else>
WHERE 1=1
</else>
</select>
```
上面这种使用方法,如果传入的参数中的name 和 age 都不为空时,将会执行 where name = #{name} and age = #{age}, 否则只会执行 where 1=1.
阅读全文