JOINS dans SQL Server : didacticiel avec exemples
Nous pouvons récupérer les données de plusieurs tables à l'aide de l'instruction JOIN. Il existe principalement 4 types différents de JOINS dans SQL Server. Nous apprendrons tous les JOINS dans Serveur SQL avec des exemples :
- JOINTURE INTÉRIEURE/jointure simple
- JOINTURE EXTERNE GAUCHE/JOINTURE GAUCHE
- JOINTURE EXTERNE À DROITE/JOINTURE À DROITE
- JOINTURE EXTÉRIEURE COMPLÈTE
JOINTURE INTERNE
Ce type de JOIN du serveur SQL renvoie les lignes de toutes les tables dans lesquelles la condition de jointure est vraie. Il faut la syntaxe suivante :
SELECT columns FROM table_1 INNER JOIN table_2 ON table_1.column = table_2.column;
Nous utiliserons les deux tableaux suivants pour démontrer cela :
Tableau des étudiants :
Tableau des tarifs :
La commande suivante illustre un INNER JOIN dans le serveur SQL avec un exemple :
SELECT Students.admission, Students.firstName, Students.lastName, Fee.amount_paid FROM Students INNER JOIN Fee ON Students.admission = Fee.admission
La commande renvoie ce qui suit :
Nous pouvons dire aux étudiants qui ont payé leurs frais de scolarité. Nous avons utilisé la colonne avec les valeurs communes dans les deux tableaux, qui est la colonne d'admission.
JOINT EXTERIEUR GAUCHE
Ce type de jointure renverra toutes les lignes de la table de gauche ainsi que les enregistrements de la table de droite avec les valeurs correspondantes. Par exemple:
SELECT Students.admission, Students.firstName, Students.lastName, Fee.amount_paid FROM Students LEFT OUTER JOIN Fee ON Students.admission = Fee.admission
Le code renvoie ce qui suit :
Les enregistrements sans valeurs correspondantes sont remplacés par des NULL dans les colonnes respectives.
JOINT EXTÉRIEUR DROIT
Ce type de jointure renvoie toutes les lignes du tableau de droite et uniquement celles dont les valeurs correspondent dans le tableau de gauche. Par exemple:
SELECT Students.admission, Students.firstName, Students.lastName, Fee.amount_paid FROM Students RIGHT OUTER JOIN Fee ON Students.admission = Fee.admission
L'instruction pour le serveur SQL OUTER JOINS renvoie ce qui suit :
La raison du résultat ci-dessus est que toutes les lignes du tableau Frais sont disponibles dans le tableau Étudiants lorsqu'elles correspondent dans la colonne d'admission.
JOINTURE EXTÉRIEURE COMPLÈTE
Ce type de jointure renvoie toutes les lignes des deux tables avec des valeurs NULL où la condition JOIN n'est pas vraie. Par exemple:
SELECT Students.admission, Students.firstName, Students.lastName, Fee.amount_paid FROM Students FULL OUTER JOIN Fee ON Students.admission = Fee.admission
Le code renvoie le résultat suivant pour les requêtes FULL OUTER JOINS dans SQL: