有些时候需要批量更新,在java中for循环更新效率太慢,通过sql批量执行可以大幅度提升性能。
批量更新demo:
< update id="batchUpdate">
UPDATE eplus_project_standard
SET device_type_id = contents.device_type_id,
type = contents.type,
project_id = contents.project_id,
summary = contents.summary,
detail = contents.detail,
period_type = contents.period_type,
period_value = contents.period_value,
index = contents.index
FROM (
VALUES
<foreach collection ="standards" item="stand" index="index"
open="" close= "" separator= ",">
(#{stand.deviceType.id},
<trim suffix="::jsonb"> #{stand.standard}</trim >
,