Par exemple, vous avez deux tables :
Une table T_Client :
NomClient |
Michel |
André |
Yves |
et, d'autre part, sans relation aucune avec les clients, une table T_Ami :
NomAmi |
Bernard |
Saturnin |
Noémie |
et vous aimeriez obtenir le résultat suivant (tout le monde dans un seul tableau) :
ToutLeMonde |
Michel |
André |
Yves |
Bernard |
Saturnin |
Noémie |
Pour celà, il va falloir utiliser une requête UNION... Le hic, c'est qu'une requête UNION ne PEUT PAS se représenter comme une requête simple ou on fait glisser les champs... il faut l'écrire en mode SQL... Comment faire...
Ce n'est pas si compliqué : Voici la marche à suivre.
- Vous créez une requête, toute simple, avec seulement la table T_Client. Vous
glissez le champ NomClient
- Vous allez Dans Affichage/Mode SQL
Vous avez :
SELECT T_Client.NomClient
FROM T_Client;
Sélectionnez ce texte, et faites Edition/Copier
- Vous créez une deuxième requête, toute simple, avec seulement la table T_Ami. Vous
glissez le champ NomAmi
- Vous allez Dans Affichage/Mode SQL
Vous avez :
SELECT T_Client.NomAmi
FROM T_Ami;
- Cliquez à la fin du texte
- Enlevez le ;
- Faites ENTER
- Faites Edition/Coller
Vous devriez alors abtenir ceci :
SELECT T_Client.NomClient
FROM T_Client
SELECT T_Client.NomAmi
FROM T_Ami;
Ajoutez UNION ici :
SELECT T_Client.NomClient
FROM T_Client
UNION
SELECT T_Client.NomAmi
FROM T_Ami;
Et voilà. Vous pouvez maintenant aller dans Affichage/Mode feuille de données, et vous avez le contenu des deux tables comme ceci :
NomClient |
Michel |
André |
Yves |
Bernard |
Saturnin |
Noémie |
La requête UNION ne peut plus se représenter en mode création (normal). Vous pouvez seulement voir le mode SQL, ou les résultats de la requête.
Sauvegardez cette requête sous R_Union, et quittez-là : Voyez comme l'icône qui la représente est particulière....
Si nous avions un client et un ami qui possèdent le même prénom, seul un des deux sera affiché. Si vous désirez que les noms en double apparaissent 2 fois remplacez UNION par UNION ALL
A savoir : les champs de type Mémo, Objet OLE ou Lien hypertexte ne peuvent pas être insclus dans une requête UNION
Il est également possible d'empiler ainsi deux champs différents d'une même table :
SELECT T_Client.Prenom
FROM T_Client
UNION
SELECT T_Client.NomClient
FROM T_Client;