У меня две одинаковые таблицы, и мне нужно скопировать строки из таблицы в другую. Как лучше всего это сделать? (Мне нужно программно скопировать всего несколько строк, мне не нужно использовать утилиту массового копирования).
sql
sql-server
рп.
источник
источник
SET IDENTITY_INSERT < table > ON
(иSET IDENTITY_INSERT < table > OFF
), чтобы временно отключить столбец идентификаторов в таблице, в которую вы пытаетесь вставить. У меня сработало, пытаясь восстановить несколько недостающих записей в середине набора данных.Альтернативный синтаксис:
INSERT tbl (Col1, Col2, ..., ColN) SELECT Col1, Col2, ..., ColN FROM Tbl2 WHERE ...
Запрос на выбор может (конечно) включать выражения, операторы case, константы / литералы и т. Д.
источник
Ответ Джарретта создает новую таблицу.
Ответ Скотта вставляется в существующую таблицу с той же структурой.
Вы также можете вставить в таблицу с другой структурой:
INSERT Table2 (columnX, columnY) SELECT column1, column2 FROM Table1 WHERE [Conditions]
источник
INSERT INTO DestTable SELECT * FROM SourceTable WHERE ...
работает в SQL Server
источник
SELECT * INTO < new_table > FROM < existing_table > WHERE < clause >
источник
SELECT * INTO [SQLTEST].[dbo].[EMPLOYEES] FROM [SQLPROD].[dbo].[EMPLOYEES]