Gli ultimi tutorial di sviluppo web
 

SQL SELECT INTO Statement


Con SQL, è possibile copiare le informazioni da una tabella in un altro.

Il SELECT INTO copie istruzione dati da una tabella e lo inserisce in una nuova tabella.


L'istruzione SQL SELECT INTO

L'istruzione SELECT INTO seleziona i dati da una tabella e lo inserisce in una nuova tabella.

SQL SELECT INTO sintassi

Siamo in grado di copiare tutte le colonne nella nuova tabella:

SELECT *
INTO newtable [IN externaldb ]
FROM table1;

Oppure possiamo copiare solo le colonne che vogliamo nella nuova tabella:

SELECT column_name(s)
INTO newtable [IN externaldb ]
FROM table1;

La nuova tabella verrà creata con la colonna di nomi e tipi come definito nel SELECT. È possibile applicare nuovi nomi utilizzando la clausola AS.


SQL SELECT in esempi

Creare una copia di backup di clienti:

SELECT *
INTO CustomersBackup2013
FROM Customers;

Utilizzare la clausola IN per copiare la tabella in un altro database:

SELECT *
INTO CustomersBackup2013 IN 'Backup.mdb'
FROM Customers;

Copiare solo poche colonne nella nuova tabella:

SELECT CustomerName, ContactName
INTO CustomersBackup2013
FROM Customers;

Copiare solo i clienti tedeschi nella nuova tabella:

SELECT *
INTO CustomersBackup2013
FROM Customers
WHERE Country='Germany';

Copiare i dati da più di una tabella nella nuova tabella:

SELECT Customers.CustomerName, Orders.OrderID
INTO CustomersOrderBackup2013
FROM Customers
LEFT JOIN Orders
ON Customers.CustomerID=Orders.CustomerID;

Tip: SELECT INTO può anche essere usato per creare una nuova tabella vuota utilizzando lo schema di un altro. Basta aggiungere una clausola WHERE che fa sì che la query per restituire nessun dato:

SELECT *
INTO newtable
FROM table1
WHERE 1=0;