Gérer les données à l’aide de requêtes

Créer des requêtes avec plusieurs sources de données

Votre navigateur ne prend pas en charge la vidéo. Installez Microsoft Silverlight, Adobe Flash Player ou Internet Explorer 9.

Pour obtenir les réponses dont vous avez besoin, vous créez généralement des requêtes qui regroupent les informations de plusieurs tables ou d’une combinaison de tables et de requêtes.

Utiliser des jointures

Vous devez parfois utiliser les données de plusieurs sources (table ou requête) pour répondre à une question. Par exemple, vous souhaitez déterminer le nombre de clients d’une région donnée qui ont commandé un produit spécifique.

Lorsque vous ajoutez plusieurs sources de données, Access utilise les relations existantes définies entre elles ou crée des jointures entre elles aux fins de création de requêtes. Une jointure est simplement un type de relation entre les sources de données dans une requête.

Remarque : Les jointures sont temporaires et ne sont associées qu’à la requête. Si vous créez fréquemment la même jointure entre des tables, vous pouvez créer une relation permanente entre elles.

Jointures internes

La plupart des jointures sont des jointures internes. Elles sont l’opposé des jointures externes, présentées dans la sectionCréer des requêtes avec des jointures externes.

Une jointure interne ne renvoie les données d’une source que lorsqu’elle trouve des enregistrements correspondants dans l’autre. Par exemple, si vous recherchez des informations sur les produits et les commandes, seules les données relatives aux produits associés à une commande apparaissent.

Capture d’écran des tables Produits et Commandes

Jointures réflexives

Une jointure réflexive joint deux copies de la même table ou requête. Elle permet de combiner des enregistrements de la même table lorsqu’il existe des valeurs correspondantes dans les champs joints.

Par exemple, supposons que vous ayez une table Employés dans laquelle figure tous les membres de votre organisation, y compris les cadres. La table contient un champ Responsable qui indique l’ID du supérieur de l’employé.

ID

Nom

Prénom

Responsable

1

Hébert

Joséphine

5

2

Bélisle

Noël

3

Rivard

Jérôme

10

4

Méthot

Marie

5

5

Charron

Sébastien

2

6

Margand

Thomas

10

7

Belisle

Gerard

10

8

Arcouet

Elisabeth

10

9

Brasseur

Danielle

5

10

Cormier

Madeleine

3

Pour rechercher le nom du supérieur d’un employé, vous devez rechercher l’employé dans la table, l’ID de responsable dans le champ Responsable, puis l’ID du responsable dans le même champ Employés. Par exemple, le supérieur de Joséphine a l’ID d’employé 5. Il s’agit de Sébastien Charron.

Pour automatiser cette tâche, vous pouvez ajouter la table Employés à votre requête à deux reprises, puis créer une jointure réflexive. Lorsque vous ajoutez la source de données une deuxième fois, Access ajoute _1 au nom de la deuxième instance. Par exemple, si vous ajoutez la table Employés à deux reprises, la deuxième instance est nommée Employés_1. Pour afficher le nom du responsable de chaque employé, vous pouvez créer une jointure entre le champ Responsable dans la table Employés et le champ ID d’employé dans la table Employés_1.

1. Ajouter des sources de données
  • Sélectionnez Créer > Création de requête.

Ajoutez toutes les tables et requêtes dont vous avez besoin en tant que sources de données. (Ne vous inquiétez pas. Si vous en oubliez une, vous pourrez toujours ajouter d’autres sources de données par la suite.)

Les sources de données peuvent inclure les tables dont vous souhaitez afficher les informations (par exemple, table Produits) et les tables contenant des informations que vous devez utiliser comme critères.

N’oubliez pas que les requêtes enregistrées existantes sont également disponibles en tant que sources de données. Par exemple, si vous avez déjà créé une requête pour rechercher toutes les commandes pour un mois donné, vous pouvez utiliser cette requête ainsi que la table Produits pour afficher tous les produits vendus au cours d’un mois donné.

2. Joindre des sources de données liées
  • Pour ajouter une jointure vous-même, faites glisser un champ d’une source de données vers un champ correspondant dans une autre source de données. Access crée une jointure interne par défaut.

Pour la plupart des relations, Access crée une jointure interne. Par ailleurs, si vous avez spécifié l’application de l’intégrité référentielle, celle-ci est incluse. Toutefois, Access ne crée pas la jointure dont vous avez besoin dans certains cas. Par exemple, si vous ajoutez des requêtes existantes à votre nouvelle requête et que vous n’avez pas créé de relations, Access ne crée pas automatiquement les jointures.

3. Exécuter la requête
  • Suivez la procédure habituelle de création d’une requête : ajoutez des champs de destination, ajoutez des critères et exécutez ou enregistrez votre requête. Pour savoir comment procéder, voir Créer des requêtes de base.

Autres actions

Formation sur Excel

Formation sur Outlook

Dans cette vidéo, vous découvrirez comment créer une requête Sélection avec plusieurs sources de données.

Vous apprendrez à utiliser des « jointures » pour créer une correspondance entre plusieurs sources.

Vous découvrirez également les différents types de jointure disponibles.

La génération d’une requête Sélection qui utilise plusieurs sources de données suit les mêmes étapes de base qu’avec une seule source de données.

Ouvrez le Concepteur de requêtes, sélectionnez vos tables ou requêtes, puis ajoutez vos champs.

Voici ce qui change.

Lorsque vous exécutez une requête sur plusieurs sources de données, vous devez créer une correspondance entre chaque source.

Par exemple, si vous souhaitez savoir quels produits figurent dans l’ensemble de commandes, vous devez faire correspondre les commandes avec leurs produits.

Pour créer ces correspondances, utilisez ce qu’on appelle une jointure.

La JOINTURE compare les données de deux champs communs : un dans chaque source de données.

Elle détermine la façon dont les données de chaque champ sont mises en correspondance.

Par exemple, le type de jointure le plus courant renvoie uniquement les données à partir d’un seul champ lorsqu’il trouve une valeur correspondante dans l’autre champ. C’est la façon dont vous trouvez le nombre de produits dans chaque commande.

Un autre type de jointure renvoie TOUTES les données d’un champ, mais uniquement les données CORRESPONDANTES de l’autre champ.

Dans cet exemple, la requête vous indique les commandes qui ne contiennent pas un produit donné.

Lorsque vous avez créé les relations entre les tables, Access a également créé une jointure pour chaque relation.

Access utilise vos relations en tant que MODÈLES pour les jointures. Ainsi, la plupart du temps, les champs joints correspondent à vos clés primaires et étrangères.

Mais ce n’est pas obligatoire. Vous pouvez également joindre des sources non liées.

Si vous avez deux sources liées et que vous les ajoutez au Concepteur de requêtes, vous voyez quelque chose qui ressemble à la relation, mais qui n’en est pas une. Access vous indique uniquement le type de relation utilisé comme MODÈLE pour la jointure.

Tant que vous avez une jointure entre vos tables ou requêtes, vous pouvez ajouter des champs provenant des deux sources.

Notez également que nous n’avons pas ajouté les champs joints à la grille de création, car Access les ajoute en arrière-plan.

Vous pouvez exécuter la requête et obtenir un résultat.

Examinons de plus près les jointures pour aborder quelques points clés.

Tout d’abord, vous pouvez définir ou modifier le type de jointure en double-cliquant ou en appuyant deux fois sur la ligne de jointure et en sélectionnant Propriétés de la jointure.

Ces paramètres contrôlent le type de jointure de votre requête et voici les types de jointure les plus courants.

Cette option crée une jointure interne. Il s’agit du type de jointure qui renvoie les données correspondantes de DEUX tables.

Access crée ce type de jointure dès que vous créez une relation.

La deuxième option crée une « jointure externe gauche », ce qui signifie que votre requête renvoie TOUTES les données de la table répertoriée à gauche et uniquement les données CORRESPONDANTES de l’autre table.

La troisième option crée une « jointure externe droite » et vous pouvez probablement deviner ce qui se produit.

La requête renvoie TOUTES les données de la table de droite et uniquement les données CORRESPONDANTES de l’autre table.

Vous utilisez généralement des jointures externes quand vous souhaitez savoir ce qui n’a pas été vendu ou d’une manière plus générale quand un événement ne s’est pas produit.

Rappelez-vous qu’il s’agit des trois types de jointure les plus courants. Vous pouvez également utiliser des jointures croisées et des jointures inégales, mais celles-ci ne sont pas utilisées très souvent.

L’autre point clé concernant les jointures est que les « relations » et les « jointures » ne sont pas la même chose.

Une RELATION est un ensemble de règles qui contrôle l’intégrité référentielle : comment vous ajoutez et supprimez des données.

Une JOINTURE détermine la façon dont votre requête fait correspondre les données.

Mais, les deux ont des points communs.

Par exemple, les relations peuvent avoir des côtés, et vos jointures peuvent également avoir des côtés, gauche et droite, mais vous utilisez uniquement des jointures dans les requêtes et vous pouvez les utiliser de certaines manières qui ne sont pas possibles dans les relations.

Par exemple, vous pouvez supprimer des jointures sans endommager votre base de données, ce qui est impossible avec une relation.

En outre, vous pouvez ajouter des jointures là où il n’y a pas de relations.

Par exemple, vous pouvez joindre un champ d’une table à un champ d’une requête tant que ces champs ont des types de données correspondants ou compatibles.

Vous savez maintenant utiliser les jointures pour créer une requête Sélection avec plusieurs sources de données. Vous pouvez également définir ou modifier le type de jointure. Vous comprenez également les similitudes et les différences entre les jointures et les relations.

Développez vos compétences
Découvrez des formations
Accédez aux nouvelles fonctionnalités en avant-première
Rejoignez le programme Office Insider

Ces informations vous ont-elles été utiles ?

Nous vous remercions pour vos commentaires.

Merci pour vos commentaires. Il serait vraisemblablement utile pour vous de contacter l’un de nos agents du support Office.

×