Applies ToAccess pour Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Cet article fait partie d’une série d’articles à propos d’Access SQL. Cet article explique comment écrire une clause FROM et s’appuie sur des exemples pour illustrer diverses techniques que vous pouvez utiliser dans une clause FROM.

Dans une instruction SELECT, vous spécifiez des sources de données dans la clause FROM. La clause FROM peut également contenir une opération JOIN. Une opération JOIN sert à faire correspondre et combiner des données provenant de deux sources de données, par exemple deux tables ou une table et une requête.

Pour une vue d’ensemble d’Access SQL, voir l’article Access SQL : concepts de base, vocabulaire et syntaxe.

Contenu de cet article

Spécifier des sources de données

Dans une instruction SELECT, la clause FROM spécifie les tables ou requêtes qui contiennent les données qui seront utilisées dans la clause SELECT.

Supposons que vous vouliez connaître le numéro de téléphone d’un client particulier. En supposant que la table qui contient le champ qui stocke ces données s’appelle tblCustomer, la clause FROM se présentera comme suit :

FROM tblCustomer

Vous pouvez mettre le nom entre crochets. Si le nom ne contient aucun espace ou caractère spécial (comme des signes de ponctuation), les crochets sont facultatifs. Si le nom contient des espaces ou des caractères spéciaux, vous devez utiliser des crochets.

Conseil : Un nom qui contient des espaces est plus facile à lire et peut vous faire gagner du temps lorsque vous concevez des formulaires et des rapports, mais peut finir par vous rendre plus tapé lorsque vous écrivez des instructions SQL. Vous devez tenir compte de ce fait lorsque vous nommez des objets dans votre base de données Access.

Utiliser des noms de remplacement pour les sources de données

Vous pouvez utiliser un nom différent pour faire référence à une table dans une instruction SELECT à l’aide d’un alias de table dans votre clause FROM. Un alias de table est un nom que vous attribuez à une source de données dans une requête lorsque vous utilisez une expression en tant que source de données, ou pour faciliter la saisie et la lecture de l’instruction SQL. Cela peut être particulièrement utile si le nom de la source de données est long ou difficile à entrer, notamment quand plusieurs champs de différentes tables possèdent le même nom.

Par exemple, si vous voulez sélectionner les données de deux champs, tous deux nommés ID, l’un provenant de la table tblCustomer et l’autre de la table tblOrder, votre clause SELECT peut se présenter comme suit :

SELECT [tblCustomer].[ID], [tblOrder].[ID]

En utilisant les alias de table dans votre clause FROM, vous pouvez faciliter la saisie de la requête. Votre clause FROM, avec les alias de table, peut se présenter comme suit :

FROM [tblCustomer] AS [C], [tblOrder] AS [O]

Vous pouvez alors utiliser ces alias de table dans votre clause SELECT comme suit :

SELECT [C].[ID], [O].[ID]

Remarque : Lorsque vous recourez à un alias de table, vous pouvez faire référence à la table dans votre instruction SQL en utilisant l’alias ou le nom complet de la table.

Joindre des données liées

Lorsque vous cherchez un moyen de combiner des paires d’enregistrements provenant de deux sources de données en un seul enregistrement dans un résultat de requête, vous pouvez réaliser une jointure. Une jointure est une opération SQL qui spécifie la façon de lier deux sources de données et si les données de l’une des sources doivent être incluses en cas d’absence de données correspondantes dans l’autre source.

Pour combiner les informations de deux sources de données, vous effectuez une opération de jointure sur le champ qu’elles ont en commun. Lorsque les valeurs stockées dans ce champ correspondent, les données des enregistrements sont combinées dans les résultats.

Outre la combinaison de données, une jointure permet également de spécifier si les enregistrements de l’une des tables doivent être inclus lorsqu’aucun enregistrement correspondant n’existe dans la table liée.

Par exemple, supposons que vous vouliez utiliser des données provenant de deux tables dans une requête : tblCustomer et tblOrder. Les deux tables ont un champ, CustomerID, pour identifier un client. Chaque enregistrement de la table tblCustomer peut avoir un ou plusieurs enregistrements correspondants dans la table tblOrder, et les valeurs correspondantes peuvent être déterminées par les valeurs du champ CustomerID.

Si vous voulez lier les tables de sorte que la requête combine les enregistrements qu’elles contiennent, à l’exception des enregistrements qui n’ont pas d’enregistrement correspondant dans l’autre table, votre clause FROM peut se présenter comme suit (line break added here for readability) :

FROM [tblCustomer] INNER JOIN [tblOrder] ON [tblCustomer].[CustomerID]=[tblOrder].[CustomerID]

Dans Access, les jointures ont lieu dans la clause FROM d’une instruction SELECT. Il existe deux types de jointures : interne et externe. Les sections suivantes expliquent ces deux types de jointure.

Jointures internes

Les jointures internes sont les plus courantes. Lorsqu’une requête comportant une jointure interne est exécutée, les seuls enregistrements inclus dans les résultats sont ceux pour lesquels il existe une valeur commune dans les deux tables jointes.

Une jointure interne comporte la syntaxe suivante (line break added here for readability) :

FROM table1 INNER JOIN table2 ON table1.field1 compopr table2.field2

Le tableau suivant décrit les différentes parties d’une opération INNER JOIN.

Élément

Description

table1, table2

Nom des tables dont les enregistrements sont combinés.

champ1, champ2

Noms des champs joints. S’ils ne sont pas numériques, les champs doivent avoir le même type de données et contenir des données de nature identique, mais leurs noms peuvent être différents.

oprcomp

Tout opérateur de comparaison relationnel tel que : "=," "<," ">," "<=," ">=," ou "<>."

Jointures externes

Les jointures externes sont similaires aux jointures externes, car elles indiquent à une requête comment combiner les informations provenant de deux sources. Elles sont différentes dans la mesure où elles indiquent également s’il faut inclure des données là où il n’existe aucune valeur commune. Les jointures externes sont directionnelles : vous pouvez spécifier d’inclure tous les enregistrements de la première source de données spécifiée dans la jointure (appelée jointure gauche), ou d’inclure tous les enregistrements de la deuxième source de données de la jointure (appelée jointure droite).

Une jointure externe comporte la syntaxe suivante :

FROM table1 [ LEFT | RIGHT ] JOIN table2ON table1.champ1oprcomp table2.champ2

Le tableau suivant décrit les différentes parties des opérations LEFT JOIN et RIGHT JOIN.

Élément

Description

table1, table2

Nom des tables dont les enregistrements sont combinés.

champ1, champ2

Noms des champs joints. Les champs doivent avoir le même type de données et contenir des données de nature identique, mais leurs noms doivent être différents.

oprcomp

Tout opérateur de comparaison relationnel tel que : "=," "<," ">," "<=," ">=," ou "<>."

Pour plus d’informations sur les jointures, voir l’article Joindre des tables et des requêtes.

Haut de la page

Besoin d’aide ?

Vous voulez plus d’options ?

Explorez les avantages de l’abonnement, parcourez les cours de formation, découvrez comment sécuriser votre appareil, etc.

Les communautés vous permettent de poser des questions et d'y répondre, de donner vos commentaires et de bénéficier de l'avis d'experts aux connaissances approfondies.