Résumé: dans ce didacticiel, vous apprendrez à utiliser SQL Server INSERT INTO SELECT
instruction pour ajouter des données d’autres tables à une table.
Introduction à SQL Server Instruction INSERT INTO SELECT
Pour insérer des données d’autres tables dans une table, vous utilisez le serveur SQL suivant INSERT INTO SELECT
instruction:
Code language: SQL (Structured Query Language) (sql)
Dans cette syntaxe, l’instruction insère les lignes renvoyées par query
dans le target_table
.
Le query
est n’importe quel instruction qui récupère les données d’autres tables. Elle doit renvoyer les valeurs correspondant aux colonnes spécifiées dans la column_list
.
La partie clause TOP
est optionnel. Il vous permet de spécifier le nombre de lignes renvoyées par la requête à insérer dans la table cible. Si vous utilisez l’option PERCENT
, l’instruction insérera le pourcentage de lignes à la place. Notez qu’il est recommandé de toujours utiliser la clause TOP
avec la clause ORDER BY
.
SQL Server INSERT Exemples INTO SELECT
Créons une table nommée addresses
pour la démonstration:
1) Insérez toutes les lignes d’un autre exemple de table
L’instruction suivante insère toutes les adresses de la table customers
dans la table addresses
:
Pour vérifier l’insert, vous utilisez la requête suivante:
Code language: SQL (Structured Query Language) (sql)
Voici le résultat:
2) Insérez des lignes d’un autre exemple de tableau
Parfois, il vous suffit d’en insérer lignes d’une autre table dans une table. Dans ce cas, vous limitez le nombre de lignes renvoyées par la requête en utilisant les conditions de la clause WHERE
.
L’instruction suivante ajoute les adresses des magasins localisés dans Santa Cruz
et Baldwin
dans la table addresses
:
SQL Le serveur a renvoyé le message suivant indiquant que deux lignes ont été insérées avec succès.
Code language: SQL (Structured Query Language) (sql)
3) Insérez les N premiers des lignes
D’abord, vous utilisez l’instruction suivante pour supprimer toutes les lignes de la table addresses
:
Code language: SQL (Structured Query Language) (sql)
Deuxièmement, pour insérer le haut 10 clients triés par leurs prénoms et noms de famille, vous utilisez l’instruction INSERT TOP INTO SELECT
comme suit:
SQL Server a renvoyé le message suivant indiquant que dix lignes ont été insérées avec succès.
Code language: SQL (Structured Query Language) (sql)
4) Insérez le pourcentage supérieur de lignes
Au lieu d’utiliser un nombre absolu de lignes, vous c an insérer un pourcentage de lignes dans une table.
Tout d’abord, tronquez toutes les lignes de la table addresses
:
Code language: SQL (Structured Query Language) (sql)
Deuxièmement, insérez les deux premiers pour cent des lignes de la table customers
triées par prénoms et noms dans le addresses
table:
SQL Server a émis le message suivant indiquant que 145 lignes ont été insérées avec succès.
Code language: SQL (Structured Query Language) (sql)
Dans ce didacticiel, vous ont appris à utiliser l’instruction SQL Server INSERT INTO SELECT
pour insérer des lignes d’autres tables dans une table.