Jointure externe complète SQL Server

Résumé: dans ce didacticiel, vous apprendrez à utiliser SQL Server FULL OUTER JOIN pour interroger les données de deux tables ou plus.

Introduction à la jointure externe complète de SQL Server

Le FULL OUTER JOIN renvoie un jeu de résultats qui comprend lignes des tables de gauche et de droite. Lorsquaucune ligne correspondante nexiste pour la ligne dans la table de gauche, les colonnes de la table de droite auront des valeurs nulles. De même, lorsquil nexiste aucune ligne correspondante pour la ligne du tableau de droite, la colonne du tableau de gauche aura des valeurs nulles.

Ce qui suit montre la syntaxe du FULL OUTER JOIN lors de la jonction de deux tables T1 et T2:

Code language: SQL (Structured Query Language) (sql)

Le mot clé OUTER est facultatif, vous pouvez donc lignorer comme indiqué dans la requête suivante:

Code language: SQL (Structured Query Language) (sql)

Dans cette syntaxe :

  • Tout dabord, spécifiez la table de gauche T1 dans la clause FROM.
  • Deuxièmement, spécifiez la bonne table T2 et un prédicat de jointure.

Le diagramme de Venn suivant illustre le FULL OUTER JOIN de deux ensembles de résultats:

Exemple de jointure externe complète SQL Server

Configurons un exemple de table pour illustrer la jointure externe complète.

Commencez par créer une nouvelle schéma nommé pm qui signifie gestion de projet.

Code language: SQL (Structured Query Language) (sql)

Ensuite, créez de nouvelles tables nommées projects et members dans le schéma pm:

Supposons que seul chaque membre puisse participer dans un projet et chaque projet a zéro ou plusieurs membres. Si un projet est en phase d’idée, il n’ya donc aucun membre affecté.

Ensuite, insérez quelques lignes dans projects et members tables:

Ensuite, interrogez les données des tables projects et members:

Code language: SQL (Structured Query Language) (sql)
Code language: SQL (Structured Query Language) (sql)

Enfin, utilisez FULL OUTER JOIN pour interroger les données des tables projects et members:

Voici le résultat:

Dans cet exemple, la requête a renvoyé des membres qui participent à des projets, des membres qui ne participent à aucun projet et des projets qui nont aucun membre.

Pour trouver les membres qui ne participent pas à tout projet et projets w nayant aucun membre, vous ajoutez une clause WHERE à la requête ci-dessus:

Limage suivante montre la sortie:

Comme indiqué clairement dans le résultat, Jack Daniel ne participe à aucun projet et Develop Mobile Sales Platform na aucun membre.

Dans ce didacticiel, vous avez appris à utiliser SQL Server complètement joindre pour interroger les données de deux ou plusieurs tables.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *