<update id="updateBatch" parameterType="java.util.List">
update base_sku
<trim prefix="set" suffixOverrides=",">
<trim prefix="status =case" suffix="end,">
<foreach collection="list" item="item" index="index">
<if test="item.status !=null and item.status != -1">
when id=#{item.id} then #{item.status}
</if>
<if test="item.status == null or item.status == -1">
when id=#{item.id} then base_sku.status//原数据
</if>
</foreach>
</trim>
</trim>
<trim prefix="set" suffixOverrides=",">
<trim prefix="price =case" suffix="end,">
<foreach collection="list" item="item" index="index">
<if test="item.price !=null and item.price!= ;">
when id=#{item.id} then #{item.price}
</if>
</foreach>
</trim>
</trim>
where id in
<foreach collection="list" index="index" item="item" separator="," open="(" close=")">
#{item.id}
</foreach>
</update>
详情参考:https://www.cnblogs.com/ifindu-san/p/7879162.html