The SQL příkaz SELECT INTO slouží ke kopírování dat z jedné tabulky do nové tabulky.
Poznámka: Dotazy se spouštějí na serveru SQL Server a nemusí fungovat v mnoha online editorech SQL, takže je lepší použít offline editor.
Syntax
Syntaxe SQL INSERT INTO je:
VYBRAT sloupec1, sloupec2…
DO NEW_TABLE ze SOURCE_TABLE
KDE Podmínka;
Chcete-li zkopírovat celá data tabulky pomocí příkazu INSERT INTO, použijte tuto syntaxi:
VYBRAT *
INTO NEW_TABLE ze SOURCE_TABLE
KDE Podmínka;
Parametr
- NEW_TABLE by měl mít stejné schéma a datové typy jako SOURCE_TABLE.
- DO znamená, do které tabulky potřebujeme kopírovat.
- Stav: Podmínka je volitelný příkaz, který vám říká, které řádky máte vybrat. Pokud neurčíte podmínku, vyberete pouze všechny řádky z původní tabulky.
SELECT INTO Příklad
Podívejme se na některé příklady příkaz SELECT INTO v SQL a pochopit, jak jej používat.
Nejprve vytvoříme tabulku Zákazník a vložíme náhodná data:
CREATE TABLE Customer( CustomerID INT PRIMARY KEY , CustomerName VARCHAR(50), LastName VARCHAR(50), Country VARCHAR(50), Age int(2), Phone int(10) ); -- Insert some sample data into the Customers table INSERT INTO Customer (CustomerID, CustomerName, LastName, Country, Age, Phone) VALUES (1, 'Shubham', 'Thakur', 'India','23','xxxxxxxxxx'), (2, 'Aman ', 'Chopra', 'Australia','21','xxxxxxxxxx'), (3, 'Naveen', 'Tulasi', 'Sri lanka','24','xxxxxxxxxx'), (4, 'Aditya', 'Arpan', 'Austria','21','xxxxxxxxxx'), (5, 'Nishant. Salchichas S.A.', 'Jain', 'Spain','22','xxxxxxxxxx');>
Tabulka zákazníků:

Tabulka zákazníků
char na řetězec java
Příklad příkazu INSERT INTO
V tomto příkladu vytvoříme tabulku backupCustomer a poté do této tabulky vložíme data pomocí příkazu SELECT INTO.
Dotaz:
CREATE TABLE backUpCustomer ( CustomerID INTEGER PRIMARY KEY AUTOINCREMENT, CustomerName VARCHAR(50), LastName VARCHAR(50), Country VARCHAR(50), Age INT, Phone VARCHAR(10) ); INSERT INTO backUpCustomer (CustomerName, LastName, Country, Age, Phone) SELECT CustomerName, LastName, Country, Age, Phone FROM Customer; SELECT * FROM backUpCustomer ;>
Výstup:

zálohování tabulky zákazníků
Dotaz
věk peta Davidsona
Použijte doložka „kde“. zkopírovat pouze některé řádky ze Zákazníka do tabulky backUpCustomer.
CREATE TABLE OtherTable ( CustomerID INTEGER PRIMARY KEY AUTOINCREMENT, CustomerName VARCHAR(50), LastName VARCHAR(50), Country VARCHAR(50), Age INT, Phone VARCHAR(10) ); INSERT INTO OtherTable (CustomerName, LastName, Country, Age, Phone) SELECT CustomerName, LastName, Country, Age, Phone FROM Customer WHERE Country = 'India';>
Výstup

výstup
Dotaz
Chcete-li zkopírovat pouze některé sloupce od zákazníka do tabulky backUpCustomer, zadejte je v dotazu.
CREATE TABLE backUpCustomers ( CustomerName VARCHAR(50), LastName VARCHAR(50), Age INT ); INSERT INTO backUpCustomers (CustomerName, LastName, Age) SELECT CustomerName, LastName, Age FROM Customer; SELECT * FROM backUpCustomers;>
Výstup

Výstup
Vložit INTO SELECT vs SELECT INTO
Oba příkazy lze použít ke kopírování dat z jedné tabulky do druhé. Ale INSERT INTO SELECT lze použít pouze v případě, že cílová tabulka existuje, zatímco příkaz SELECT INTO lze použít, i když cílová tabulka neexistuje, protože vytváří cílovou tabulku, pokud neexistuje.
INSERT INTO backUpCustomer select * from Customer;>
HERE table tempTable by měla být přítomna nebo vytvořena předem, jinak vyvolá chybu. 
SELECT * INTO backUpCustomer from Customer;>
Zde není nutné dříve existovat, protože SELECT INTO vytvoří tabulku, pokud tabulka neexistuje, a poté zkopíruje data.