Копирование данных в другую таблицу

Как скопировать/добавить данные из одной таблицы в другую таблицу с той же схемой в SQL Server?

Edit:

Я хочу сказать, что есть запрос

select * 
into table1 
from table2 
where 1=1 

который создает table1 с той же схемой, что и данные, как в table2.

Есть ли какой-нибудь короткий запрос, подобный этому, только для копирования всего данных только в уже существующую таблицу?

Ответ 1

Если обе таблицы действительно имеют одинаковую схему:

INSERT INTO newTable
SELECT * FROM oldTable

В противном случае вам придется указать имена столбцов (список столбцов для newTable является необязательным, если вы указываете значение для всех столбцов и выбираете столбцы в том же порядке, что newTable схема newTable):

INSERT INTO newTable (col1, col2, col3)
SELECT column1, column2, column3
FROM oldTable

Ответ 2

Это правильный способ сделать это:

INSERT INTO destinationTable
SELECT * FROM sourceTable

Ответ 3

INSERT INTO table1 (col1, col2, col3)
SELECT column1, column2, column3
FROM table2                                        

Ответ 4

Попробуйте следующее:

INSERT INTO MyTable1 (Col1, Col2, Col4)
   SELECT Col1, Col2, Col3 FROM MyTable2

Ответ 5

Простой способ, если новая таблица не существует, и вы хотите сделать копию старой таблицы со всем, что после этого работает в SQL Server.

SELECT * INTO NewTable FROM OldTable

Ответ 6

Попробуйте следующее:

Insert Into table2
Select * from table1

Ответ 7

INSERT INTO DestinationTable(SupplierName, Country)
SELECT SupplierName, Country FROM SourceTable;

Не обязательно, чтобы имена столбцов были одинаковыми.

Ответ 8

Вставить выбранный столбец с условием

INSERT INTO where_to_insert (col_1,col_2) SELECT col1, col2 FROM from_table WHERE condition;

Скопируйте все данные из одной таблицы в другую с тем же именем столбца.

INSERT INTO where_to_insert 
SELECT * FROM from_table WHERE condition;

Ответ 10

select col1,col2,col3 into table2
from table 1