我想用另一个表中的数据更新mySql中的表.
我有两个表"人"和"业务".人员表通过名为"business_id"的列链接到业务表.
必要的表结构,主键是星号(表:列):人物:*business_id,*sort_order,电子邮件业务:*business_id,电子邮件
我想用人员表中的电子邮件更新业务表电子邮件列,就像这样(我知道我在这里遗漏了一些东西):
UPDATE business b SET email = (SELECT email from People p where p.business_id = b.business_id AND sort_order = '1') WHERE b.email = '';
Run Code Online (Sandbox Code Playgroud)
这有意义吗?可能吗?
Chs*_*y76 101
UPDATE business b, people p
SET b.email = p.email
WHERE b.business_id = p.business_id
AND p.sort_order = '1'
AND b.email = ''
Run Code Online (Sandbox Code Playgroud)
hob*_*ave 15
注意,如果sort_order是INT,那么不要使用'1' - 使用1:
UPDATE business b
JOIN People p
ON p.business_id = b.business_id
AND p.sort_order = '1'
SET b.email = p.email
WHERE b.email = '';
Run Code Online (Sandbox Code Playgroud)