L'opérateur UNION SQL combine le résultat de deux instructions SELECT ou plus.
L'opérateur UNION SQL
L'opérateur UNION est utilisé pour combiner le résultat-ensemble de deux ou plusieurs instructions SELECT.
Remarquez que chaque instruction SELECT dans l'Union doit avoir le même nombre de colonnes. Les colonnes doivent également avoir des types de données similaires. En outre, les colonnes de chaque instruction SELECT doivent être dans le même ordre.
SQL UNION Syntaxe
SELECT column_name(s) FROM table1
UNION
SELECT column_name(s) FROM table2 ;
Note: L'opérateur UNION sélectionne uniquement des valeurs distinctes par défaut. Pour permettre des valeurs en double, utilisez le mot clé ALL avec UNION.
SQL UNION ALL Syntaxe
SELECT column_name(s) FROM table1
UNION ALL
SELECT column_name(s) FROM table2 ;
PS: Les noms de colonnes dans l'ensemble de résultats d'un UNION sont généralement égaux aux noms de colonnes dans la première instruction SELECT dans l'UNION.
Base de données Demo
Dans ce tutoriel, nous allons utiliser la base de données Northwind bien connu.
Voici une sélection de la "Customers" tableau:
N ° de client | CustomerName | Nom du contact | Adresse | Ville | Code postal | Pays |
---|---|---|---|---|---|---|
1 |
Alfreds Futterkiste | Maria Anders | Obere Str. 57 | Berlin | 12209 | Germany |
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constitucion 2222 | Mexico D.F. | 05021 | Mexico |
3 | Antonio Moreno Taqueria | Antonio Moreno | Mataderos 2312 | Mexico D.F. | 05023 | Mexico |
Et une sélection de la "Suppliers" tableau:
SupplierID | Nom du fournisseur | Nom du contact | Adresse | Ville | Code postal | Pays |
---|---|---|---|---|---|---|
1 | Liquid Exotic | Charlotte Cooper | 49 Gilbert St. | Londres | EC1 4SD | Royaume-Uni |
2 | La Nouvelle-Orléans Cajun Delights | Shelley Burke | PO Box 78934 | Nouvelle Orléans | 70117 | Etats-Unis |
3 | Le Homestead de grand-mère Kelly | Regina Murphy | 707 Oxford Rd. | Ann Arbor | 48104 | Etats-Unis |
SQL UNION Exemple
L'instruction SQL suivante sélectionne toutes les différentes villes (seules les valeurs distinctes) des "Customers" et les "Suppliers" tables:
Exemple
SELECT City FROM Customers
UNION
SELECT City FROM Suppliers
ORDER
BY City;
Essayez - le vous - même » Note: UNION ne peut pas être utilisé pour lister toutes les villes des deux tables. Si plusieurs clients et fournisseurs partagent la même ville, chaque ville ne sera répertorié une fois. UNION sélectionne uniquement les valeurs distinctes. Utilisez UNION ALL pour sélectionner également les valeurs en double!
SQL UNION ALL Exemple
L'instruction SQL suivante utilise UNION ALL pour sélectionner toutes les valeurs (en double aussi) les villes des "Customers" et "Suppliers" tables:
Exemple
SELECT City FROM Customers
UNION ALL
SELECT City FROM Suppliers
ORDER BY City;
Essayez - le vous - même » SQL UNION ALL Avec WHERE
L'instruction SQL suivante utilise UNION ALL pour sélectionner toutes les valeurs (en double aussi) villes allemandes des "Customers" et "Suppliers" tables:
Exemple
SELECT City, Country FROM Customers
WHERE Country='Germany'
UNION ALL
SELECT City, Country FROM Suppliers
WHERE Country='Germany'
ORDER BY
City;
Essayez - le vous - même »