Copiar os dados para outra tabela

Como copiar / adicionar dados de uma tabela para outra tabela com o mesmo esquema no servidor SQL?

Editar:

quero dizer que há uma pergunta

select * 
into table1 
from table2 
where 1=1 

que cria table1 com o mesmo esquema, bem como dados como em table2.

Existe alguma consulta curta como esta para copiar apenas dados inteiros para uma tabela já existente?

Author: Rajaram Shelar, 2012-11-05

9 answers

Se ambas as tabelas forem realmente o mesmo esquema:

INSERT INTO newTable
SELECT * FROM oldTable

Caso contrário, terá de indicar os nomes das colunas (a lista de colunas para newTable é opcional se estiver a indicar um valor para todas as colunas e a seleccionar as colunas pela mesma ordem que o esquema de newTable:

INSERT INTO newTable (col1, col2, col3)
SELECT column1, column2, column3
FROM oldTable
 217
Author: lc., 2012-11-05 17:56:46

Esta é a maneira correcta de o fazer:

INSERT INTO destinationTable
SELECT * FROM sourceTable
 11
Author: Zzz, 2012-11-05 17:58:27
INSERT INTO table1 (col1, col2, col3)
SELECT column1, column2, column3
FROM table2                                        
 8
Author: user3566871, 2014-05-27 08:43:51

Tenta isto:

INSERT INTO MyTable1 (Col1, Col2, Col4)
   SELECT Col1, Col2, Col3 FROM MyTable2
 7
Author: Abe Miessler, 2012-11-05 17:56:14

Tenta isto:

Insert Into table2
Select * from table1
 4
Author: Kapil Khandelwal, 2012-11-05 17:59:13
INSERT INTO DestinationTable(SupplierName, Country)
SELECT SupplierName, Country FROM SourceTable;

Não é obrigatório que os nomes das colunas sejam os mesmos.

 2
Author: S.Adikaram, 2016-06-29 03:23:14

Forma simples se a nova tabela não existir e você quiser fazer uma cópia da tabela antiga com tudo, em seguida, a seguir funciona no servidor SQL.

SELECT * INTO NewTable FROM OldTable
 2
Author: Satish Patel, 2017-10-13 14:15:43

Apenas para informação completa, tenha cuidado que estes comandos não copiam índices e gatilhos da tabela! Veja a publicação seguinte para copiar os índices e despoletar o programa: Copiar programaticamente os índices de uma tabela para outra no servidor SQL

 1
Author: HausO, 2017-05-23 12:26:38
select col1,col2,col3 into table2
from table 1
 -6
Author: chaithanyaa, 2016-02-22 20:11:02