De insert-instructie heeft eigenlijk een syntaxis om precies dat te doen. Het is echter een stuk eenvoudiger als u de kolomnamen opgeeft in plaats van "*" te selecteren:
INSERT INTO new_table (Foo, Bar, Fizz, Buzz)
SELECT Foo, Bar, Fizz, Buzz
FROM initial_table
-- optionally WHERE ...
Ik kan dit beter verduidelijken, want om de een of andere reden krijgt dit bericht een paar negatieve stemmen.
De syntaxis INSERT INTO ... SELECT FROM is voor wanneer de tabel waarin u invoegt ("new_table" in mijn voorbeeld hierboven) al bestaat. Zoals anderen al hebben gezegd, is de syntaxis SELECT ... INTO bedoeld als u de nieuwe tabel wilt maken als onderdeel van de opdracht.
Je hebt niet aangegeven of de nieuwe tabel moet worden gemaakt als onderdeel van de opdracht, dus INSERT INTO ... SELECT FROM zou goed moeten zijn als je doeltabel al bestaat.