2011-06-03 48 views
4

我正在使用sql server作为我的数据库引擎。我需要一个SQL查询,以便我可以将一个表中的所有记录插入到另一个现有表中。两个表都在同一个数据库中。从一个表插入所有记录到另一个现有表的sql查询

我需要在我的代码中使用此查询。

+0

这个问题不是那么简单,我们需要对表和哪些领域有更多的细节存在于每个中。你有一个自动递增的身份字段吗?如果是这样,您需要关闭插入以保持相同的ID – Miles 2011-06-03 21:51:30

回答

10
insert into destination_table (field1, field2, field3, ...) 
select field1, field2, field3, ... 
from source_table 
+1

@User:此查询将工作。您需要检查以确保所有字段正确排列,并且不要尝试插入破坏约束的记录。 – Miles 2011-06-03 21:50:49

+0

是的,它的工作。谢谢伙计 – user310849 2011-06-03 21:56:59

1

假设所有的字段匹配(在相同的顺序和相同类型的)

INSERT INTO TargetTable SELECT * FROM SourceTable 
+0

这将创建一个新的TargetTable。 OP表示目标已经存在。 – 2011-06-03 21:44:18

+0

我已经使用此代码。但是,如果目标表已经存在,此查询不起作用 – user310849 2011-06-03 21:44:58

+0

我认为SELECT INTO创建了新的目标表,并在表已存在时断开。 – 2011-06-03 21:45:23

相关问题