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 :

JOINTURE INTERNE

Tableau des tarifs :

JOINTURE INTERNE

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 :

JOINTURE INTERNE

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 :

JOINT EXTERIEUR GAUCHE

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 :

JOINT EXTÉRIEUR DROIT

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:

JOINTURE EXTÉRIEURE COMPLÈTE