我有两个桌子,这是我的第一张桌子,ID SUBST_ID CREATED_ID1 031938 TEST1232 930111 COOL1233 000391 THIS1094 039301 BRO10115 123456 COOL938... ... ...这是我的第二张桌子ID SERIAL_ID BRANCH_ID1 039301 NULL2 000391 NULL3 123456 NULL... ... ...我需要一些如何使用第一个表中的数据更新第二个表中的所有行的信息。它需要在一个更新查询中完成所有这些操作。SUBST_ID和SERIAL_ID都匹配,它需要从第一个表中获取created_id并将其插入第二个表中。因此,第二张表将变为以下内容,ID SERIAL_ID BRANCH_ID1 039301 BRO10112 000391 THIS1093 123456 COOL938... ... ...感谢您的帮助和指导。
3 回答
30秒到达战场
TA贡献1828条经验 获得超6个赞
UPDATE TABLE2
JOIN TABLE1
ON TABLE2.SERIAL_ID = TABLE1.SUBST_ID
SET TABLE2.BRANCH_ID = TABLE1.CREATED_ID;
慕容森
TA贡献1853条经验 获得超18个赞
除了Tom的答案之外,如果您需要经常重复操作并希望节省时间,还可以执行以下操作:
UPDATE TABLE1
JOIN TABLE2
ON TABLE1.SUBST_ID = TABLE2.SERIAL_ID
SET TABLE2.BRANCH_ID = TABLE1.CREATED_ID
WHERE TABLE2.BRANCH_ID IS NULL
当年话下
TA贡献1890条经验 获得超9个赞
使用INNER JOIN:
UPDATE TABLE1
INNER JOIN TABLE2 ON TABLE1.SUBST_ID = TABLE2.SERIAL_ID
SET TABLE2.BRANCH_ID = TABLE1.CREATED_ID;
另一个替代解决方案,如下所示:在这里我使用WHERE子句代替JOIN
UPDATE
TABLE1,
TABLE2
WHERE
TABLE1.SUBST_ID = TABLE2.SERIAL_ID
SET
TABLE2.BRANCH_ID = TABLE1.CREATED_ID;
添加回答
举报
0/150
提交
取消