mysql更新多条不相同的数据
今天做一个开发的时候,遇到了这样的问题
平常,更新一条数据很简单
update table_name set name=test where id=1;
更新多条数据也很简单
update table_name set name=test where id in (1, 2, 3, 4);
但今天这个问题,更新多条不同得数据,就稍显复杂,经过查询,发现有种办法也可以通过一条sql语句完成,而不用循环去每次更新,那样效率太低
update table_name set name=case id
when 1 then hello
when 2 then abcd
when 3 then 444
when 4 then world
end
where id in (1, 2, 3, 4);
这样效率不算低,而且简单易懂