Instruction SQL SELECT INTO
L'instruction SQL SELECT INTO
L' SELECT INTO
instruction copie les données d'une table dans une nouvelle table.
Syntaxe SELECT INTO
Copiez toutes les colonnes dans un nouveau tableau :
SELECT *
INTO newtable [IN externaldb]
FROM oldtable
WHERE condition;
Copiez uniquement certaines colonnes dans une nouvelle table :
SELECT column1, column2, column3, ...
INTO newtable [IN externaldb]
FROM oldtable
WHERE condition;
La nouvelle table sera créée avec les noms de colonne et les types tels que définis dans l'ancienne table. Vous pouvez créer de nouveaux noms de colonne à l'aide de la AS
clause.
SQL SELECT INTO Exemples
L'instruction SQL suivante crée une copie de sauvegarde de Customers :
SELECT * INTO CustomersBackup2017
FROM Customers;
L'instruction SQL suivante utilise la IN
clause pour copier la table dans une nouvelle table d'une autre base de données :
SELECT *
INTO CustomersBackup2017 IN 'Backup.mdb'
FROM Customers;
L'instruction SQL suivante ne copie que quelques colonnes dans une nouvelle table :
SELECT CustomerName, ContactName INTO CustomersBackup2017
FROM Customers;
L'instruction SQL suivante copie uniquement les clients allemands dans une nouvelle table :
SELECT *
INTO CustomersGermany
FROM Customers
WHERE Country = 'Germany';
L'instruction SQL suivante copie les données de plusieurs tables dans une nouvelle table :
SELECT Customers.CustomerName, Orders.OrderID
INTO CustomersOrderBackup2017
FROM Customers
LEFT JOIN Orders
ON Customers.CustomerID = Orders.CustomerID;
Astuce : SELECT INTO
peut également être utilisé pour créer une nouvelle table vide en utilisant le schéma d'une autre. Ajoutez simplement une
WHERE
clause qui fait que la requête ne renvoie aucune donnée :
SELECT * INTO newtable
FROM oldtable
WHERE 1 = 0;