如何在SQL中将行从一个表复制到另一个表?

如何在SQL中将行从一个表复制到另一个表?,sql,Sql,我一直在尝试将一个表中列出的数据复制到位于同一数据库中的另一个表中。但是,每次我输入所有内容时,它都会运行查询并显示0行已更新 我尝试了几种不同的方法,试图让它发挥作用。下面列出了一个这样的尝试。我是在研究试图完成这项工作时发现的 UPDATE t1 SET t1.column = t2.column FROM Table1 t1 INNER JOIN Table2 t2 ON t1.id = t2.id; 非常感谢您的帮助。UPDA

我一直在尝试将一个表中列出的数据复制到位于同一数据库中的另一个表中。但是,每次我输入所有内容时,它都会运行查询并显示0行已更新

我尝试了几种不同的方法,试图让它发挥作用。下面列出了一个这样的尝试。我是在研究试图完成这项工作时发现的

UPDATE 
     t1
SET 
     t1.column = t2.column
FROM 
     Table1 t1 
     INNER JOIN Table2 t2 
     ON t1.id = t2.id;

非常感谢您的帮助。

UPDATE
只会修改已经存在的记录,如果您想插入另一个表上存在的行,请使用
insert

您可以组合
INSERT
SELECT
将整个
表1
复制到
表2

INSERT INTO table2 SELECT * FROM table1;
您可以使用
INSERT IGNORE
仅复制尚不存在的记录(基于唯一键)

如果表不同,也可以指定要复制的字段:

INSERT INTO table2 (id, first_name, last_name) SELECT id, name, surname FROM table1;