set標記是mybatis提供的一個智能標記,我一般將其用在修改的sql中,例如以下情況:
<update>
update user
<set>
<if test="name != null and name.length()>0">name = #{name},</if>
<if test="gender != null and gender.length()>0">gender = #{gender},</if>
</set>
where id = #{id}
</update>
在上述的代碼片段當中,假如說現在三個字段都有值得話,那么上面打印的SQL語句如下:
update user set name='xxx' , gender='xx' where id='x'
在上面標紅的地方是沒有逗號的,也就是說set標記已經自動幫助我們把最后一個逗號給去掉了