<update id = "batchUpdateAccountUser" parameterType="java.util.List">
update user_basic_info
<trim prefix="set" suffixOverrides=",">
<trim prefix="unionId=case" suffix="end,">
<foreach collection="list" item="item" index="index">
<if test="item.unionId != null and item.unionId != ''">
when username=#{item.username} then #{item.unionId}
</if>
</foreach>
</trim>
</trim>
where username in
<foreach collection="list" index="index" item="item" separator="," open="(" close=")">
#{item.username}
</foreach>
</update>
一次性批量更新的属性只要有一个满足 item.unionId != null and item.unionId != '',即便其他都为null,一样会更新此属性。