The Stavek SQL SELECT INTO se uporablja za kopiranje podatkov iz ene tabele v novo tabelo.
Opomba: Poizvedbe se izvajajo v SQL Serverju in morda ne bodo delovale v mnogih spletnih urejevalnikih SQL, zato je bolje uporabiti urejevalnik brez povezave.
moj živi čriček
Sintaksa
Sintaksa SQL INSERT INTO je:
IZBERI stolpec1, stolpec2 ...
V NEW_TABLE iz SOURCE_TABLE
KJE Pogoj;
Če želite kopirati celotne podatke tabele z ukazom INSERT INTO, uporabite to sintakso:
IZBERI *
INTO NEW_TABLE iz SOURCE_TABLE
KJE Pogoj;
Parameter
- NOVA_TABLE mora imeti isto shemo in tipe podatkov kot ta SOURCE_TABLE.
- INTO pomeni, v katero tabelo moramo kopirati.
- Pogoj: Pogoj je neobvezna izjava, ki vam pove, katere vrstice izbrati. Če ne določite pogoja, boste samo izbrali vse vrstice iz izvirne tabele.
SELECT INTO Primer
Poglejmo si nekaj primerov Izjava SELECT INTO v SQL in razumeti, kako ga uporabljati.
Najprej bomo ustvarili tabelo Customer in vstavili nekaj naključnih podatkov:
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');>
Tabela strank:

Tabela strank
Primer izjave INSERT INTO
V tem primeru bomo ustvarili rezervno tabelo strank in nato v to tabelo vstavili podatke s stavkom SELECT INTO.
poizvedba:
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 ;>
Izhod:

varnostno kopiranje tabele strank
Poizvedba
pete davidson starost
Uporabi klavzula 'kje' da kopirate samo nekatere vrstice iz Customer v tabelo 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';>
Izhod

izhod
Poizvedba
Če želite kopirati samo nekatere stolpce iz Customer v tabelo backUpCustomer, jih določite v poizvedbi.
java načrtovalni vzorec
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;>
Izhod

Izhod
Vstavi INTO SELECT proti SELECT INTO
Oba stavka je mogoče uporabiti za kopiranje podatkov iz ene tabele v drugo. Toda INSERT INTO SELECT bi lahko uporabili le, če ciljna tabela obstaja, medtem ko bi lahko stavek SELECT INTO uporabili tudi, če ciljna tabela ne obstaja, saj ustvari ciljno tabelo, če ne obstaja.
INSERT INTO backUpCustomer select * from Customer;>
HERE tabela tempTable bi morala biti prisotna ali ustvarjena vnaprej, sicer vrže napako. 
SELECT * INTO backUpCustomer from Customer;>
Tu ni nujno, da obstaja prej, saj SELECT INTO ustvari tabelo, če tabela ne obstaja, in nato kopira podatke.