【mysql】多表关联更新
更新USER表的用户名
把 user_new 表的用户名,更新给 user, 两张表通过 id 进行关联
UPDATE user u
SET u.name = (
SELECT name FROM user_new un WHERE u.id = un.id
)
WHERE u.is_del = 0
这样写的话,会出现:1048 - Column 'name' cannot be null, Time: 0.022000s
如按如下写法:
UPDATE user u
SET u.name = (
SELECT name FROM user_new un WHERE u.id = un.id
)
WHERE u.is_del = 0
AND EXISTS (
SELECT 1 FROM user_new un WHERE u.id = un.id
);

浙公网安备 33010602011771号