On distingue plusieurs catégories de jointures. Une première distinction peut se faire entre equijoint et non-equijoint. Les equijointures sont probablement le type de jointure le plus courant : ce sont tout simplement des jointures combinant des lignes sur une égalité de colonnes. La jointure Customer et Sale décrite ci-dessus est
Syntaxe de base des jointures
une equijointure. On devine que les non-equijoints
utilisent une relation d’inégalité entre les colonnes.
Commençons par les equijointures, en les divisant en trois catégories
- equijointures internes
- equijointures externes gauches
- equijointures d’exception
Chacune de ces trois catégories se distingue par la manière dont sont traitées
les lignes correspondantes et non correspondantes, comme l’illustre la figure
4.
La figure 5 contient un exemple de jointure externe gauche. Elle est constituée
de toutes les lignes comprises dans une jointure simple plus chaque ligne
non correspondante dans la première table (Customer dans cet exemple). Notons
dans la figure, que pour chacune de ces lignes non correspondantes, SQL donne
la valeur nulle aux colonnes provenant de la seconde table. Alors que la jointure
simple de la figure 3 donne des informations sur chaque client ayant passé une
commande, la jointure externe gauche donne des informations sur tous les clients,
qu’ils aient commandé ou non.
La figure 6 illustre un exemple de jointure d’exception. Une telle jointure ne
comprend que les lignes non correspondantes de la première table. Dans
mon exemple, j’ai créé une liste de tous les clients n’ayant passé aucune commande.
Notons à nouveau que SQL donne la valeur nulle aux colonnes provenant de la seconde
table. Bien que je montre les colonnes OrderID et SaleDate dans cet exemple, il
faut savoir qu’en principe on n’inclut pas les colonnes provenant de la
table de droite d’une jointure d’exception, parce qu’elles seront toutes nulles
par définition.
Pourquoi n’y a-t-il pas de jointure externe droite ? Tout simplement parce qu’on
n’en a pas besoin : pour obtenir la table résultat équivalente, il suffit de transposer
les tables gauche et droite et d’utiliser une jointure externe gauche.
Et qu’en est-il d’une jointure externe complète, où l’on inclurait les
lignes non correspondantes provenant des deux tables ? On peut fort bien
utiliser l’opérateur Union de SQL pour combiner deux ensembles de résultats, comme
l’illustre la figure 7. Ici, l’opération Union combine toutes les lignes Customer
(provenant de la jointure externe gauche) et toutes les lignes Sale non correspondantes
(provenant de la jointure d’exception), aboutissant au résultat souhaité.
Téléchargez cette ressource
Microsoft 365 Tenant Resilience
Face aux failles de résilience des tenants M365 (configurations, privilèges, sauvegarde). Découvrez 5 piliers pour durcir, segmenter et surveiller vos environnements afin de limiter l’impact des attaques. Prioriser vos chantiers cyber et améliorer la résilience de vos tenants Microsoft 365.
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- IA de confiance : le facteur clé pour rentabiliser les projets d’entreprise
- Quand les « travailleurs numériques » pallient le manque de bras dans l’industrie
- Hôpitaux virtuels : renforcer le système de santé français grâce au numérique
- Cybercriminalité bancaire : l’IA industrialise les attaques en 2026
Articles les + lus
Quand les « travailleurs numériques » pallient le manque de bras dans l’industrie
Model Context Protocol : le contexte, grand oublié du débat
Microsoft dévoile MAI-Thinking-1 : un modèle de raisonnement « enterprise-grade » en preview publique
Couchbase lance AI Data Plane pour industrialiser l’IA agentique
Windows 11 : Microsoft généralise le point-in-time restore pour accélérer la remise en service des PC
À la une de la chaîne Tech
- Quand les « travailleurs numériques » pallient le manque de bras dans l’industrie
- Model Context Protocol : le contexte, grand oublié du débat
- Microsoft dévoile MAI-Thinking-1 : un modèle de raisonnement « enterprise-grade » en preview publique
- Couchbase lance AI Data Plane pour industrialiser l’IA agentique
- Windows 11 : Microsoft généralise le point-in-time restore pour accélérer la remise en service des PC
