logo

Types de JOINTURE SQL

JOINTURE SQL

Une jointure SQL est utilisée pour récupérer ou combiner des données (lignes ou colonnes) de deux ou plusieurs tables en fonction des conditions définies.

Tableau 1 : Commande

Numéro de commande N ° de client Nom de la commande Nom du produit
12025 101 Pierre abc
12030 105 Robert XIX
12032 110 James XYZ
12034 115 André PQR
12035 120 Mathieu AAA

Tableau 2 : Client

N ° de client Nom du client Pays
100 Désordonné Maxico
101 Prince Taïwan
103 Maria Fernández Turquie
105 Jasmin Paris
110 Faf belette Indonésie
120 Fusée de Rome Russie

Maintenant, nous avons deux tables Commande et le Client . Il y a un N ° de client colonne commune aux deux tableaux. Alors, écrivez la requête SQL pour définir la relation générale afin de sélectionner les enregistrements des correspondances dans les deux tables.

 Select Order.OrderID, Customer.CustomerName, Customer.Country, Order.ProductName from Order INNER JOIN Customer ON Order.CustomerID = Customer.CustomerID; 

Après avoir exécuté ce qui précède SQL requêtes, il produit le résultat suivant :

Numéro de commande Nom du client Pays Nom du produit
12025 Prince Taïwan abc
12030 Jasmin Paris XIX
12032 Faf belette Indonésie XYZ
12035 Fusée romaine Russie AAA

Types de jointure SQL

Il existe différents types de jointures utilisées en SQL :

  1. Jointure interne / Jointure simple
  2. Jointure externe gauche / Jointure gauche
  3. Jointure externe droite / Jointure droite
  4. Jointure externe complète
  5. Jointure croisée
  6. Auto-adhésion

Jointure interne

La jointure interne est utilisée pour sélectionner toutes les lignes ou colonnes correspondantes dans les deux tables ou tant que la condition définie est valide dans SQL.

Syntaxe:

 Select column_1, column_2, column_3 FROM table_1 INNER JOIN table_2 ON table_1.column = table_2.column; 

Nous pouvons représenter la jointure interne à travers le diagramme de Venn, comme suit :

Types de JOINTURE SQL

Tableau 1 : Étudiants

Carte d'étudiant Nom d'étudiant Sujet ID enseignant
101 Alexandra L'informatique T201
102 Charles Économie T202
103 Tom Croisière L'informatique T201
104 Aaron Finch Électronique T203
105 Graine Bajoff Conception web T204
106 Christophe Littérature anglaise T205
107 Jean Styliste modéliste T206

Tableau 2 : Enseignants

ID enseignant Nom de l'enseignant EnseignantEmail
T201 M. Davis [email protégé]
T202 Mme Jonas [email protégé]
T201 M. Davis [email protégé]
T204 Mme Lopez [email protégé]
T205 Mme Wiley [email protégé]
T206 Mister Bean [email protégé]

Nous avons deux tableaux : Étudiants et le Enseignants Les tables. Écrivons les requêtes SQL pour rejoindre la table en utilisant le JOINTURE INTERNE comme suit:

 Select Student_ID, StudentName, TeacherName, TeacherEmail FROM Students INNER JOIN Teachers ON Students.TeacherID = Teachers.TeacherID; 

Après avoir exécuté la requête, elle produit le tableau ci-dessous.

Types de JOINTURE SQL

Jointure naturelle

Il s'agit d'un type de type interne qui joint deux ou plusieurs tables sur la base du même nom de colonne et qui a le même type de données présent sur les deux tables.

Syntaxe:

 Select * from tablename1 Natural JOIN tablename_2; 

Nous avons deux tableaux : Étudiants et le Enseignants Les tables. Écrivons les requêtes SQL pour rejoindre la table en utilisant le REJOINDRE comme suit:

 Select * from Students Natural JOIN Teachers; 

Après avoir exécuté la requête ci-dessus, elle produit le tableau suivant.

Types de JOINTURE SQL

JOINT GAUCHE

Le JOINT GAUCHE est utilisé pour récupérer tous les enregistrements de la table de gauche (table1) et les lignes ou colonnes correspondantes de la table de droite (table2). Si les deux tables ne contiennent aucune ligne ou colonne correspondante, la valeur NULL est renvoyée.

Syntaxe:

 Select column_1, column_2, column(s) FROM table_1 LEFT JOIN table_2 ON table_1.column_name = table_2.column_name; 

Nous pouvons également représenter la jointure gauche via le diagramme de Venn, comme suit :

Types de JOINTURE SQL

Remarque : Dans certaines bases de données, LEFT JOIN est également connu sous le nom de LEFT OUTER JOIN.

Tableau 1 : Détails du produit

ID produit Nom du produit Montant
Pro101 Ordinateur portable 56000
Pro102 Mobile 38000
Pro103 Écouteurs 5000
Pro104 Télévision 25000
Pro105 iPad 60000

Tableau 2 : Détails_client

protocoles de couche liaison de données
Nom du client Adresse du client Âge du client ID produit
Martin Guptil San Francisco, États-Unis 26 Pro101
James Australie 29 Pro103
Ambati Williamson Nouvelle-Zélande 27 Pro102
Jofra Archer Afrique du Sud 24 Pro105
Kate Wiley Australie vingt Pro103

Nous avons deux tableaux : Détails du produit et le Détails du client Les tables. Écrivons les requêtes SQL pour rejoindre la table en utilisant le JOINT GAUCHE comme suit:

 Select ID, ProductName, CustomerName, CustomerAddress, Amount FROM Product_Details LEFT JOIN Customer_Details ON Product_Details.ID = Customer_Details.ProductID; 

Après avoir exécuté la requête, elle produit le tableau suivant.

Types de JOINTURE SQL

Le REJOINDRE À DROITE est utilisé pour récupérer tous les enregistrements de la table de droite (table2) et les lignes ou colonnes correspondantes de la table de gauche (table1). Si les deux tables ne contiennent aucune ligne ou colonne correspondante, la valeur NULL est renvoyée.

Syntaxe:

 Select column_1, column_2, column(s) FROM table_1 RIGHT JOIN table_2 ON table_1.column_name = table_2.column_name; 

Nous pouvons également représenter la jointure droite via le diagramme de Venn, comme suit :

Types de JOINTURE SQL

Remarque : Dans certaines bases de données, le RIGHT JOIN est également appelé RIGHT OUTER JOIN.

Tableau 1 : Détails du produit

IDENTIFIANT Nom du produit Montant
Pro101 Ordinateur portable 56000
Pro102 Mobile 38000
Pro103 Écouteurs 5000
Pro104 Télévision 25000
Pro105 iPad 60000

Tableau 2 : Détails_client

Nom du client Adresse du client Âge du client ID produit
Martin Guptil San Francisco, États-Unis 26 Pro101
James Australie 29 Pro103
Ambati Williamson Nouvelle-Zélande 27 Pro102
Jofra Archer Afrique du Sud 24 Pro105
Présage Angleterre 29 Pro107
Morgan Angleterre vingt Pro108

Nous avons deux tableaux : Détails du produit et le Détails du client Les tables. Écrivons les requêtes SQL pour rejoindre la table en utilisant le REJOINDRE À DROITE comme suit:

 Select ID, ProductName, CustomerName, CustomerAddress, Amount FROM Product_Details LEFT JOIN Customer_Details ON Product_Details.ID = Customer_Details.ProductID; 

Après avoir exécuté la requête, elle produit le tableau ci-dessous.

Types de JOINTURE SQL

FULL JOIN ou FULL Outer JOIN :

Il s'agit d'un ensemble de résultats combinés des deux JOINT GAUCHE et REJOINDRE À DROITE . Les tables jointes renvoient tous les enregistrements des deux tables et si aucune correspondance n'est trouvée dans la table, elle place NULL. On l'appelle aussi un JOINTURE EXTERNE COMPLÈTE .

Syntaxe:

 Select column_1, column_2, column(s) FROM table_1 FULL JOIN table_2 ON table_1.column_name = table_2.column_name; 

Ou, JOINTURE EXTERNE COMPLÈTE

 Select column_1, column_2, column(s) FROM table_1 FULL OUTER JOIN table_2 ON table_1.column_name = table_2.column_name; 

Nous pouvons également représenter la jointure externe complète via le diagramme de Venn, comme suit :

Types de JOINTURE SQL

Tableau 1 : Détails du produit

IDENTIFIANT Nom du produit Montant
Pro101 Ordinateur portable 56000
Pro102 Mobile 38000
Pro103 Écouteurs 5000
Pro104 Télévision 25000
Pro105 iPad 60000

Tableau 2 : Détails_client

Nom du client Adresse du client Âge du client ID produit
Martin Guptil San Francisco, États-Unis 26 Pro101
James Australie 29 Pro103
Ambati Williamson Nouvelle-Zélande 27 Pro102
Jofra Archer Afrique du Sud 24 Pro105
Présage Angleterre 29 Pro107
Morgan Angleterre vingt Pro108

Nous avons deux tableaux : Détails du produit et le Détails du client Les tables. Écrivons les requêtes SQL pour rejoindre la table en utilisant le COMPLET REJOIGNEZ comme suit :

 Select ID, ProductName, CustomerName, CustomerAddress, Amount FROM Product_Details FULL JOIN Customer_Details ON Product_Details.ID = Customer_Details.ProductID; 

Après avoir exécuté la requête, elle produit le tableau ci-dessous.

Types de JOINTURE SQL

Remarque : MySQL ne prend pas en charge les concepts FULL JOIN, nous pouvons donc utiliser la clause UNION ALL pour combiner les deux tables.

Voici la syntaxe de UNION TOUS Clause pour combiner les tables.

 Select ID, ProductName, CustomerName, CustomerAddress, Amount FROM Product_Details LEFT JOIN Customer_Details ON Product_Details.ID = Customer_Details.ProductID UNION ALL Select ID, ProductName, CustomerName, CustomerAddress, Amount FROM Product_Details RIGHT JOIN Customer_Details ON Product_Details.ID = Customer_Details.ProductID 

Types de JOINTURE SQL

JOINTION CROISÉE

Il est également connu sous le nom JOINT CARTÉSIEN , qui renvoie le produit cartésien de deux ou plusieurs tables jointes. Le JOINTION CROISÉE produit un tableau qui fusionne chaque ligne du premier tableau avec chaque deuxième ligne du tableau. Il n’est pas nécessaire d’inclure une condition dans CROSS JOIN.

Syntaxe:

 Select * from table_1 cross join table_2; 

Ou,

 Select column1, column2, column3 FROM table_1, table_2; 

Tableau 1 : Détails du produit

IDENTIFIANT Nom du produit Montant
Pro101 Ordinateur portable 56000
Pro102 Mobile 38000
Pro103 Écouteurs 5000
Pro104 Télévision 25000
Pro105 iPad 60000

Tableau 2 : Détails_client

Nom du client Adresse du client Âge du client ID produit
Martin Guptil San Francisco, États-Unis 26 Pro101
James Australie 29 Pro103
Ambati Williamson Nouvelle-Zélande 27 Pro102
Jofra Archer Afrique du Sud 24 Pro105
Présage Angleterre 29 Pro107
Morgan Angleterre vingt Pro108

Nous avons deux tableaux : Détails du produit et le Détails du client Les tables. Écrivons les requêtes SQL pour rejoindre la table en utilisant le COMPLET REJOIGNEZ comme suit :

 Select ID, ProductName, CustomerName, CustomerAddress, Amount FROM Product_Details, Customer_Details; 

Après avoir exécuté la requête, elle produit le tableau ci-dessous.

python rstrip
Types de JOINTURE SQL

AUTO-INSCRIPTION

Il s'agit d'un SELF JOIN utilisé pour créer une table en se joignant elle-même car il y avait deux tables. Il permet de nommer temporairement au moins une table dans une instruction SQL.

Syntaxe:

 Select column1, column2, column(s) FROM table_1 Tbl1, table_2 Tbl2 WHERE condition; 

Tableau 1 et Tbl2 sont deux alias de table différents pour la même table.

Tableau 1 : Détails du produit

IDENTIFIANT Nom du produit Montant
Pro101 Ordinateur portable 56000
Pro102 Mobile 38000
Pro103 Écouteurs 5000
Pro104 Télévision 25000
Pro105 iPad 60000

Écrivons les requêtes SQL pour rejoindre la table en utilisant le AUTO-INSCRIPTION comme suit:

 Select TB.ID, TB.ProductName FROM Product_Details TB, Product_Details TB2 WHERE TB.AMOUNT <tb2.amount; < pre> <p>After executing the query, it produces the below table. </p> <img src="//techcodeview.com/img/sql-tutorial/44/types-sql-join-12.webp" alt="Types of SQL JOIN"> <hr></tb2.amount;>