在MyBatis中,可以使用<choose>
標簽來實現類似于Java中的if-else語句的功能。下面是一個示例代碼:
<select id="getUsers" resultType="User">
SELECT * FROM users
WHERE 1=1
<choose>
<when test="username != null">
AND username = #{username}
</when>
<when test="email != null">
AND email = #{email}
</when>
<otherwise>
AND status = 'active'
</otherwise>
</choose>
</select>
在上面的示例中,<choose>
標簽用于包裹多個<when>
和一個<otherwise>
子標簽,根據條件判斷是否執行相應的SQL語句。當username
不為null時,會執行AND username = #{username}
;當email
不為null時,會執行AND email = #{email}
;否則會執行AND status = 'active'
。