Lors du traitement des données dans les bases de données, nous avons souvent tendance à utiliser les opérateurs set dans SQL , pour récupérer des données selon nos besoins en combinant deux ou plusieurs instructions SELECT. Dans cet article sur SQL UNION, je vais discuter de l'opérateur UNION utilisé pour récupérer des données dans l'ordre suivant:
- Qu'est-ce que l'opérateur SQL UNION?
- Syntaxe:
- Différences entre UNION et UNION ALL
- Exemples SQL UNION:
Commençons!
Qu'est-ce que l'opérateur SQL UNION?
Comme son nom l'indique, cet opérateur / cette clause est utilisé pour combiner les résultats de deux ou plusieurs instructions SELECT. Ici, chaque instruction SELECT utilisée dans l'instruction UNION doit avoir le même nombre de colonnes dans le même ordre. En outre, toutes les colonnes présentes dans les instructions SELECT doivent avoir des types de données similaires.
La clause UNION ne donne que des valeurs uniques en sortie. Juste au cas où vous souhaiteriez des valeurs en double, vous devez utiliser la clause UNION ALL.
Dans cet article sur SQL UNION, laissez-nous comprendre la syntaxe.
Syntaxe de SQL UNION
Syntaxe UNION
SELECT Colonne1, Colonne2, Colonne3, ..., ColonneN FROM Table1 UNION SELECT Colonne1, Colonne2, Colonne3, ..., ColonneN FROM Table2
Syntaxe UNION ALL
SELECT Colonne1, Colonne2, Colonne3, ..., ColonneN FROM Table1 UNION ALL SELECT Colonne1, Colonne2, Colonne3, ..., ColonneN FROM Table2
Dans cet article, laissez-nous comprendre les différences entre UNION et UNION ALL.
Différences entre SQL UNION et UNION ALL
SYNDICAT | UNION TOUT |
Combine deux ou plusieurs jeux de résultats et ne conserve pas les valeurs en double. | Combine deux ou plusieurs jeux de résultats et conserve les valeurs en double. |
Syntaxe: SYNDICAT | Syntaxe: UNION TOUT |
Ensuite, dans cet article sur SQL UNION, laissez-nous comprendre les différentes manières d'utiliser cet opérateur.
Exemples de SQL UNION et UNION ALL
Pour votre meilleure compréhension, je considérerai les tableaux suivants pour vous montrer différents exemples.
Table des employés
EmpID | Nom | EmpAge | Ville | Code postal | Pays |
un | Emma | 2. 3 | Berlin | 12109 | Allemagne |
2 | Rahul | 26 | Bombay | 400015 | Inde |
3 | Aayra | 24 | New York | 10014 | LES USAGES |
4 | John | 32 | Londres | E1 7AE | Royaume-Uni |
5 | Derek | 29 | New York | 10012 | LES USAGES |
Tableau des projets
ProjectID | Nom | Jours de travail | Ville | Code postal | Pays |
un | Projet 1 | dix | Berlin | 12109 | Allemagne |
2 | Projet 2 | sept | Bombay | 400015 | Inde |
3 | Projet 3 | vingt | Delhi | 110006 | Inde |
4 | Projet 4 | quinze | Bombay | 400015 | Inde |
5 | Projet 5 | 28 | Berlin | 12109 | Allemagne |
Commençons par des exemples.
Exemples SQL UNION
Exemple d'opérateur UNION
Écrivez une requête pour récupérer des villes distinctes de la table Employés et projets.
CHOISISSEZ LA VILLE DU SYNDICAT des employés CHOISISSEZ LA VILLE DES PROJETS ORDER PAR Ville
Production:
Ville |
Berlin |
Delhi |
Londres |
Bombay comment transformer double en int java |
New York |
Exemple d'opérateur UNION ALL
Écrivez une requête pour récupérer les villes de la table Employés et projets. Ici, les valeurs en double doivent être incluses.
SÉLECTIONNEZ LA VILLE DU SYNDICAT des employés TOUS CHOISISSEZ LA VILLE À PARTIR DE Projets ORDER PAR Ville
Production:
Ville |
Berlin |
Berlin |
Berlin |
Delhi |
Londres |
Bombay |
Bombay |
Bombay |
New York |
New York |
Ensuite dans cet article, voyons comment utiliser la clause UNION avec des alias SQL.
UNION avec alias SQL
Les alias SQL sont utiliséspour donner un nom temporaire à une table ou à une colonne. Alors, écrivons une requête pour lister tous les employés et projets uniques.
quelle est la difference entre git et github
SELECT 'Employé' AS Type, Nom, Ville, Pays FROM Employés UNION SELECT 'Projet', Nom, Ville, Pays FROM Projets
Production:
Type | Nom | Ville | Pays |
Employé | Emma | Berlin | Allemagne |
Employé | Rahul | Bombay | Inde |
Employé | Aayra | New York | LES USAGES |
Employé | John | Londres | Royaume-Uni |
Employé | Derek | New York | LES USAGES |
Projet | Projet 1 | Berlin | Allemagne |
Projet | Projet 2 | Bombay | Inde |
Projet | Projet 3 | Delhi | Inde |
Projet | Projet 4 | Bombay | Inde |
Projet | Projet 5 | Berlin | Allemagne |
UNION avec clause WHERE
Écrivez une requête pour récupérer les différentes villes indiennes et leurs codes postaux à la fois dans la table Employés et Projets.
SELECT Ville, Code Postal, Pays FROM Employés WHERE Pays = 'Inde' UNION SELECT Ville, Code Postal, Pays FROM Projets WHERE Pays = 'Inde' ORDER PAR Ville
Production:
Ville | Code postal | Pays |
Delhi | 110006 | Inde |
Bombay | 400015 | Inde |
UNION ALL avec clause WHERE
Écrivez une requête pour récupérer les villes indiennes et leurs codes postaux à la fois dans la table Employés et Projets, où les valeurs en double sont autorisées
SELECT Ville, Code Postal, Pays FROM Employés WHERE Pays = 'Inde' UNION ALL SELECT Ville, Code Postal, Pays FROM Projets WHERE Pays = 'Inde' ORDER PAR Ville
Production:
Ville | Code postal | Pays |
Delhi | 110006 | Inde |
Bombay | 400015 | Inde |
Bombay | 400015 | Inde |
Bombay | 400015 | Inde |
Dans cet article, voyons comment utiliser les clauses UNION et UNION ALL avec JOINS.JOINS en SQL sont qui sont utilisées pour combiner des lignes de deux ou plusieurs tables, en fonction d'une colonne liée entre ces tables.
UNION avec JOINS
L'opérateur SQL UNION peut être utilisé avec pour récupérer les données de deux tables différentes. Je vais considérer le tableau suivant avec le tableau Employés pour l'exemple.
Table ProjectDetails
PID | Jours de travail | EmpID | Coût du projet |
Onze | 12 | 4 | 20000 |
22 | 16 | 3 | 35 000 |
33 | 30 | un | 60000 |
44 | 25 | 3 | 45 000 |
55 | vingt et un | un | 50 000 |
SELECT EmpID, Name, CostforProject FROM Employees GAUCHE JOIN ProjectDetails ON Employees.EmpID = ProjectDetails.EmpID UNION SELECT EmpID, Name, CostforProject FROM Employees RIGHT JOIN ProjectDetails ON Employees.EmpID = ProjectDetails.EmpID
Production:
EmpID | Nom | Coût du projet |
un | Emma | 60000 |
un | Emma | 50 000 |
2 | Rahul | NUL |
3 | Aayra | 35 000 |
3 | Aayra | 45 000 |
4 | John | 20000 |
5 | Derek | NUL |
UNION ALL avec JOINS
Écrivez une requête pour récupérer l'EmpID, le nom et le coût du projet à partir de la table Employés et ProjectDetails, où les valeurs en double sont autorisées.
SELECT EmpID, Name, CostforProject FROM Employees GAUCHE JOIN ProjectDetails ON Employees.EmpID = ProjectDetails.EmpID UNION ALL SELECT EmpID, Name, CostforProject FROM Employees RIGHT JOIN ProjectDetails ON Employees.EmpID = ProjectDetails.EmpID
Production:
EmpID | Nom | Coût du projet |
un | Emma | 60000 |
un | Emma | 50 000 |
2 | Rahul | NUL |
3 | Aayra | 35 000 |
3 | Aayra | 45 000 |
4 | John | 20000 |
5 | Derek | NUL |
4 | John | 20000 |
3 | Aayra | 35 000 |
un | Emma | 60000 |
3 | Aayra | 35 000 |
un | Emma | 50 000 |
Par là, j'arrive à la fin de cet article sur SQL UNION. J'espère que vous avez apprécié la lecture de cet article sur SQL UNION. Nous avons vu les différentes manières d'utiliser les commandes UNION et UNION ALL pour vous aider à écrire des requêtes. Si vous souhaitez en savoir plus sur MySQL et apprenez à connaître cette base de données relationnelle open source, puis consultez notre qui vient avec une formation en direct animée par un instructeur et une expérience de projet réelle. Cette formation vous aidera à comprendre MySQL en profondeur et vous aidera à maîtriser le sujet.
Vous avez une question pour nous? Veuillez le mentionner dans la section commentaires de «SQL UNION» et je vous répondrai.