我有2个表具有相同的结构和相同的id(作为主键)但不同的数据:
现在,我需要合并它们,并且有类似的东西:
重要的是不要更改行的ID而不插入新记录。
如何使用MySQL查询?
答案 0 :(得分:1)
认为您只需要使用两个表中的UPDATE
执行INNER JOIN
查询。我假设id
列是如此
UPDATE table1 a
INNER JOIN table2 b
ON a.id = b.id
SET a.fax = b.fax
否则你可以设置一个新表并通过加入前两个表来获取值,如下所示
INSERT INTO table3 (id, tel, fax)
SELECT a.id, a.tel, b.fax
FROM table1 a
INNER JOIN table2 b
ON a.id = b.id
答案 1 :(得分:1)
首先,备份您的数据。然后,如果您只想结束一个表(并且主键匹配),那么试试这个:
UPDATE `table1`
SET `table1`.`fax` = `table2`.`fax`
WHERE `table1`.`id` = `table2`.`id`;
如果这不起作用,那么你做一个备份是件好事。
)