在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語句的可讀性和可維護性。