在MyBatis的動(dòng)態(tài)SQL中可以使用if標(biāo)簽來(lái)實(shí)現(xiàn)if-else功能。以下是一個(gè)示例:
<select id="selectUsers" parameterType="map" resultType="User">
SELECT *
FROM users
<where>
<if test="name != null">
AND name = #{name}
</if>
<if test="age != null">
AND age = #{age}
</if>
</where>
</select>
在上面的示例中,如果傳入的參數(shù)map中包含name,則會(huì)添加一個(gè)條件AND name = #{name},如果傳入的參數(shù)map中包含age,則會(huì)添加一個(gè)條件AND age = #{age}。如果不滿足條件,則不會(huì)添加任何條件。
這樣就可以實(shí)現(xiàn)if-else功能,在動(dòng)態(tài)SQL中根據(jù)傳入的參數(shù)來(lái)動(dòng)態(tài)拼接SQL語(yǔ)句。