Requete liaison table dans access [Résolu]

Signaler
Messages postés
675
Date d'inscription
samedi 31 mai 2003
Statut
Membre
Dernière intervention
26 mai 2013
-
Messages postés
675
Date d'inscription
samedi 31 mai 2003
Statut
Membre
Dernière intervention
26 mai 2013
-
Bonjour ,

Comment fait-on quand on a une relation entre les tables pour executer une requete
j'ai une table CLient et une test
dans chaque table il y a un champ numero
index sans doublon mise avec clef primaire.
quand je fait une requete du type

Set rs db.OpenRecordset("SELECT nom,prenom,rue,n,cpostal,commune FROM client where client.numero " & a & " GROUP BY nom,prenom,rue,n,cpostal,commune")

si je fait msgbox commune ces ok
mais si je fait msgbox tel ces pas ok
dans la table client j'ai tout les detailles du client et dans celle test j'ai une colonne avec numero et une Tel
merci

8 réponses

Messages postés
14770
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
27 février 2021
151
Bonjour,

Regardes alors
LEFT JOIN
RIGHT JOIN
et consorts

Mon site
Messages postés
14770
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
27 février 2021
151
Bonjour,

J'ai pas compris la question, tu peux reformuler ?

Mon site
Messages postés
675
Date d'inscription
samedi 31 mai 2003
Statut
Membre
Dernière intervention
26 mai 2013
1
Bonjour Henry
J'ai une table nommé Manager.mdb
dans cette base j'ai deux table la premiere est client la deuxieme est test.
Dans la table test j'ai

dans la table client j'ai

la relation est celle-ci

quand je fait
Set rs db.OpenRecordset("SELECT nom,prenom,rue,n,cpostal,commune FROM client where client.numero " & a & " GROUP BY nom,prenom,rue,n,cpostal,commune")

Puisque j'ai une ralation normalement il devrait aussi me donner rs!societer ??
mais je ne sait comment

Merci
Messages postés
14770
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
27 février 2021
151
Bonjour,

Non, la relation que tu as fait est une relation d'intégrité, càd je ne peux pas supprimer l'enregistrement racine, si d'autres dépendent de lui.

Il faut que tu dise explicitement que tu veux avoir les données de la table liée, avec un Inner Join par exemple.

Mon site
Messages postés
675
Date d'inscription
samedi 31 mai 2003
Statut
Membre
Dernière intervention
26 mai 2013
1
Re,
Je ne connait absolument pas inner join
peu tu me donner un exemple avec ma requet si ces possible

Merci
Messages postés
14770
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
27 février 2021
151
Bonjour,

Une recherche rapide sur le net te fournira toutes les réponses.

Mon site
Messages postés
675
Date d'inscription
samedi 31 mai 2003
Statut
Membre
Dernière intervention
26 mai 2013
1
je vient de tester ceci
Set rs db.OpenRecordset("SELECT nom,prenom,rue,n,cpostal,commune,societer FROM client INNER JOIN test ON client.numero test.numero where client.numero = " & a & " ")

le probleme qu'il y a ces que si il n'y a pas de client il n'affiche rien
donc si le client.numero = 1 existe mais le 1 n'existe pas dans test.numero il n'affiche rien meme pas la partie de la table client

a tu une idée
Messages postés
675
Date d'inscription
samedi 31 mai 2003
Statut
Membre
Dernière intervention
26 mai 2013
1
Merci , avec Left join ça fonctionne , quand il n'y a pas de donnée dans test il me renvoi une valeur null mais ça ces ok

Encore un grand Merci Henry