«выбрать * в таблицу» Будет работать для вставки данных в существующую таблицу - PullRequest
17 голосов
/ 22 апреля 2010

Я пытаюсь вставить данные из одной моей существующей таблицы в другую существующую таблицу.

Можно ли вставить данные в любую существующую таблицу, используя запрос select * into.Я думаю, что это можно сделать с помощью объединения, но в этом случае мне нужно записать все данные моей существующей таблицы во временную таблицу, затем удалить эту таблицу и, наконец, применить объединение, чтобы вставить все записи в одну и ту же таблицу

, например.

select * into #tblExisting from tblExisting
drop table tblExisting
select * into tblExisting from #tblExisting union tblActualData

Здесь tblExisting - это таблица, где я на самом деле хочу хранить все данные. TblActualData - это таблица, из которой данные должны быть добавлены в tblExisting.

Правильный ли это метод.У нас есть другая альтернатива?

Ответы [ 4 ]

25 голосов
/ 22 апреля 2010

Вы должны попробовать

INSERT INTO ExistingTable (Columns,..)
SELECT Columns,...
FROM OtherTable

Взгляните на INSERT

и SQL SERVER - вставка данных из одной таблицы в другую - INSERT INTO SELECT - SELECT INTO TABLE

4 голосов
/ 22 апреля 2010

Нет, вы не можете использовать SELECT INTO для вставки данных в существующую таблицу.

Документация делает это очень ясным:

SELECT… INTO создает новую таблицу в файловой группе по умолчанию и вставляет в нее результирующие строки запроса.

Как правило, вы хотите избегать использования SELECT INTO в рабочей среде, поскольку это дает вам очень мало контроля над созданием таблицы и может привести к всевозможным неприятным блокировкам и другим проблемам с производительностью. Вы должны явно создавать схемы и использовать INSERT - даже для временных таблиц.

0 голосов
/ 07 ноября 2017

@ Райан Чейз Можете ли вы сделать это, выбрав все столбцы с помощью *? Да!

INSERT INTO yourtable2 SELECT * FROM yourtable1

0 голосов
/ 22 апреля 2010
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...