Wyrażenie SELECT INTO i INSERT INTO
Wyrażenie SELECT INTO używane jest aby skopiować dane z jednej tabeli do nowej tabeli.
Wzór:
SELECT *
INTO NowaTabela [IN ZewnętrznaBaza]
FROM StaraTabela
WHERE warunek;
Kopiowanie tylko niektórych kolumn:
SELECT kolumna1
, kolumna2
, kolumna3
INTO NowaTabela [IN ZewnętrznaBaza]
FROM StaraTabela
WHERE warunek1;
Nowa tabela zostanie utworzona zgodnie z nazwami i typami danych zdefiniowanymi w starej tabeli. Używając aliasów możemy tworzyć nowe nazwy kolumn.
Wyrażenie INSERT INTO używane jest aby skopiować dane z jednej tabeli i wstawić je do drugiej tabeli. INSERT INTO SELECT wymaga, aby dane w tabeli źródłowej były w takim samym formacie jak dane w tabeli docelowej. Wszystkie rekordy tabeli docelowej nie są objęte modyfikacją, tj. dodajemy tylko nowe wartości.
Wzór:
INSERT INTO Tabela2 (kolumna1, kolumna2, kolumna3)
SELECT kolumna4
, kolumna5
, kolumna6
FROM Tabela1
WHERE warunek1;