我有两个相同的表,需要将行从表复制到另一个表.最好的方法是什么?(我需要以编程方式只复制几行,我不需要使用批量复制实用程序).
Sco*_*ols 112
只要没有标识列,您就可以
INSERT INTO TableNew
SELECT * FROM TableOld
WHERE [Conditions]
Run Code Online (Sandbox Code Playgroud)
Mic*_*ren 69
替代语法:
INSERT tbl (Col1, Col2, ..., ColN)
SELECT Col1, Col2, ..., ColN
FROM Tbl2
WHERE ...
Run Code Online (Sandbox Code Playgroud)
select查询可以(当然)包括表达式,case语句,常量/文字等.
Sco*_*use 39
Jarrett的回答创建了一个新表.
Scott的答案插入到具有相同结构的现有表中.
您还可以插入具有不同结构的表:
INSERT Table2
(columnX, columnY)
SELECT column1, column2 FROM Table1
WHERE [Conditions]
Run Code Online (Sandbox Code Playgroud)
INSERT INTO DestTable
SELECT * FROM SourceTable
WHERE ...
Run Code Online (Sandbox Code Playgroud)
适用于SQL Server
SELECT * INTO < new_table > FROM < existing_table > WHERE < clause >
Run Code Online (Sandbox Code Playgroud)