(一)纯mysql:
UPDATE my_table SET
status = CASE id
WHEN 1 THEN 3
WHEN 2 THEN 4
WHEN 3 THEN 5
END,
title = CASE id
WHEN 1 THEN 'New Title 1'
WHEN 2 THEN 'New Title 2'
WHEN 3 THEN 'New Title 3'
END
WHERE id IN (1,2,3)
(二)mybatis写法
1:foreach
update my_table
set status=
separator=" " open="case id" close="end">
when #{item.id} then #{item.status}
where id in
separator="," open="(" close=")">
#{item.id,jdbcType=BIGINT}
2:trim
update my_table
when id=#{item.id} then #{item.status}
where id in
#{item.id,jdbcType=BIGINT}