sql中对多条记录同一字段根据不同条件更新时,可以考虑以下方式:
1.用多个UPDATE去进行。这种方式下对于需要修改的记录过多的情况下就显得很“呆”,因为一类记录需要一个UPDATE语句,对应的sql语句显得很冗余;
2.考虑使用sql中的case条件语句:
UPDATE DATABASE.table A
set A.字段1= case
when A.id = #{id} then 1
when A.name = #{name} then 2
/*...等多个条件...*/
else 0
end
注意end关键字不能缺少;