mybatis批量更新效率最好的写法
时间: 2023-12-07 08:40:02 浏览: 185
以下是两种MyBatis批量更新的方法,它们都可以提高更新效率:
1.使用foreach标签
```xml
<update id="batchUpdate" parameterType="java.util.List">
update table_name
set column1 = #{list.value1},
column2 = #{listItem.value2},
...
where id = #{listItem.id}
<foreach collection="list" item="listItem" separator=";">
</foreach>
</update>
```
2.使用SQL的case语句
```xml
<update id="batchUpdate" parameterType="java.util.List">
update table_name
set column1 = case id
<foreach collection="list" item="listItem" separator=" ">
when #{listItem.id} then #{listItem.value1}
</foreach>
end,
column2 = case id
<foreach collection="list" item="listItem" separator=" ">
when #{listItem.id} then #{listItem.value2}
</foreach>
end,
...
where id in
<foreach collection="list" item="listItem" separator="," open="(" close=")">
#{listItem.id}
</foreach>
</update>
```
阅读全文