在MyBatis中,可以使用<choose>
、<when>
和<otherwise>
来实现多条件判断语句。以下是一个示例:
<select id="selectUsers" resultType="User">
SELECT * FROM users
<where>
<choose>
<when test="name != null">
AND name = #{name}
</when>
<when test="age != null">
AND age = #{age}
</when>
<otherwise>
AND 1=1
</otherwise>
</choose>
</where>
</select>
在以上示例中,<choose>
用来包裹多个条件判断,<when>
用来定义条件成立时的sql语句,<otherwise>
用来定义当所有条件都不成立时的sql语句。在<when>
和<otherwise>
中使用test
属性来指定条件判断的表达式。
通过这种方式,可以简洁地实现多条件判断,并且保持sql语句的可读性和可维护性。