我一直在尝试将一个表中列出的数据复制到另一个表中,这两个数据都位于同一个数据库中。但是,每次输入所有内容时,它都会运行查询并更新0行。
我尝试了多种变体,试图让它发挥作用。一种这样的尝试如下所列。我在研究试图完成这项工作时发现了这一点。
UPDATE
t1
SET
t1.column = t2.column
FROM
Table1 t1
INNER JOIN Table2 t2
ON t1.id = t2.id;
对此的任何帮助将不胜感激。
答案 0 :(得分:0)
UPDATE
只会修改已存在的记录,如果要插入另一个表中存在的行使用INSERT
。
您可以将INSERT
和SELECT
合并,将整个table1
复制到table2
。
INSERT INTO table2 SELECT * FROM table1;
您可以使用INSERT IGNORE
仅复制尚不存在的记录(基于唯一键)。
如果表格不同,您还可以指定要复制的字段:
INSERT INTO table2 (id, first_name, last_name) SELECT id, name, surname FROM table1;