Mybites 批量更新
2023-04-25 本文已影响0人
小玉1991
批量更新一直报错。后来用case...when...then 方式实现了批量更新。
记录一下。
<!--批量更新-->
<update id="changeClassItems"
parameterType="java.util.Map">
UPDATE "class_sub"
<set>
"money"= case
<foreach collection="items" item="item" separator=" ">
when "id" =#{item.id} then #{item.money,jdbcType=DECIMAL}
</foreach>
end,
"info"= case
<foreach collection="items" item="item" separator=" ">
when "id" =#{item.id} then #{item.info,jdbcType=DECIMAL}
</foreach>
end,
"update_time"= CURRENT_TIMESTAMP()
</set>
where "id" in
<foreach collection="items" item="item" separator="," open="(" close=")">
#{item.id}
</foreach>
</update>