首页 > 解决方案 > 将两个表中的数据与相同的主键组合起来

问题描述

我有一张这样的桌子:

table1
id   | name  | location
------------------------
1    | brian | null
2    | john  | null

和另一个这样的表:

table2
id   | location
------------------------
2    |  USA
1    |  China

我想将位置插入到 table1 ON t1.id=t2.id 所以 table1 看起来像这样:

table1
id   | name  | location
------------------------
1    | brian | China
2    | john  | USA

但由于某种原因,当我跑步时

INSERT INTO table1
SELECT location FROM table2
WHERE table1.id = table2.id;

我收到语法错误。有谁知道如何正确插入?

标签: mysqlsql

解决方案


实际上你想更新 Table1:

UPDATE table1 t1
INNER JOIN table2 t2
ON t1.id = t2.id
SET t1.location = t2.location;

推荐阅读