[MySQL]根据条件UPDATE数据

时间:2025-04-06 17:24:17

1、第一种:使用b表数据更新a表

update Player as a ,PlayerSet as b

set a.role_id=b.set_value 

where a.role_id=b.set_key

2、第二种:也是使用b表数据更新a表,只是方法不一样

update RoleSet

set_key=(SELECT name FROM Player where id = RoleSet.set_value); 

(分享一个小技巧:使用变量增加不重复后缀)

set @i:=1;
update Group 
SET name=CONCAT(name,'_', (@i:=@i+1))
where name in
(
SELECT
from
(
        SELECT name  as GroupName
        FROM Group 
) as a
);