Récupérer des enregistrements liés provenant de plusieurs tables comportant des jointures
Cette rubrique fournit des informations sur les sujets suivants :
Jointure de tables
Les bases de données sont constituées de plusieurs tables contenant des informations liées. Lorsque vous ajoutez deux tables (ou plus) à une requête, Microsoft Query crée automatiquement une « jointure » entre les tables lorsqu'il reconnaît un champ clé primaire dans une table et un champ dont le nom est identique dans l'autre table. Des lignes de jointure affichent les relations entre les données des tables.
Les lignes de jointure connectent la table Produits à la table Détails des commandes en liant le champ IDproduit de chaque table. La table Détails des commandes et la table Commandes sont également liées par le biais de leur champ IDcommande.
Il existe deux types de jointures de base qui peuvent être utilisées pour récupérer des enregistrements à partir de plusieurs tables. Une jointure interne récupère uniquement les enregistrements liés des tables. Une jointure externe récupère tous les enregistrements d'une table et les enregistrements liés d'une autre table.
En plus des jointures internes et externes, vous pouvez créer trois autres types de jointures : des jointures réflexives, externes complètes et de soustraction. Une jointure réflexive renvoie un jeu de résultats qui combine les informations d'une table. Une jointure externe complète renvoie tous les enregistrements des deux tables, même si ceux-ci ne sont pas liés. Une jointure de soustraction renvoie uniquement les enregistrements de la première table qui ne correspondent pas aux enregistrements de la deuxième table.
Retour au début
Jointures internes
Une jointure interne (type de jointure par défaut) récupère uniquement les enregistrements qui comportent la même valeur dans les champs joints des deux tables. Microsoft Query combine les enregistrements correspondants de chaque table, puis les affiche dans le jeu de résultats.
Informations complémentaires
Joindre des tables dans une requête
Modifier le type de jointure entre les tables d'une requête
Retour au début
Jointures externes
Une jointure externe récupère tous les enregistrements d'une table et tous les enregistrements correspondants d'une autre table. Lorsque les valeurs des deux tables sont identiques, Microsoft Query combine les enregistrements correspondants et les affiche sous la forme d'un enregistrement unique dans le jeu de résultats. Lorsqu'un enregistrement de la table qui apporte tous ses enregistrements ne peut pas être mis en correspondance avec un enregistrement de l'autre table, l'enregistrement continue d'apparaître dans le jeu de résultats. Toutefois, Query affiche des cellules vides à l'endroit de cet enregistrement.
Informations complémentaires
Joindre des tables dans une requête
Modifier le type de jointure entre les tables d'une requête
Retour au début
Jointures réflexives
Lorsque vous souhaitez combiner des informations dans une table, utilisez une jointure réflexive. Par exemple, dans une table d'employés, chaque enregistrement comprend l'ID d'employé du directeur responsable d'un employé. Le directeur se trouvant dans la même table que cet employé, vous pouvez lier la table à elle-même pour renvoyer à la fois le nom et l'ID d'employé du directeur.
En liant une table à elle-même, vous pouvez récupérer à la fois l'ID et le nom du directeur.
Informations complémentaires
Récupérer plusieurs champs à l'aide d'une jointure réflexive
Retour au début
Jointures externes complètes
Lorsque vous souhaitez combiner tous les enregistrements provenant de deux tables, vous pouvez créer une requête de jointure externe complète. Ce type de requête renvoie toutes les données des deux tables, même lorsque celles-ci ne sont pas liées.
Par exemple, si vous disposez d'une table Clients et d'une table Commandes, vous pouvez utiliser une jointure externe complète pour renvoyer toutes les commandes en attente (de la table Commandes) et tous les clients qui n'ont pas passé de commande (de la table Clients).
Les deux premiers noms de cette liste n'ont pas passé de commande.
Remarque Lorsque vous créez une jointure externe complète, Query affiche uniquement le jeu de résultats de la requête et non les tables utilisées à l'intérieur de la requête.
Informations complémentaires
Combiner toutes les données provenant de deux tables
Retour au début
Jointures de soustraction
Lorsque deux de vos tables contiennent des données semblables, comme deux tables de clients, et lorsque chaque table contient des informations qui ne figurent pas dans l'autre table, vous pouvez créer une jointure de soustraction. Une jointure de soustraction renvoie uniquement les enregistrements de la première table qui ne correspondent pas aux enregistrements de la deuxième.
Deux tables contenant des données client semblables
Informations complémentaires
Récupérer des enregistrements qui ne sont pas communs à deux tables
Retour au début