Aide requete sql

florian -  
moiced59 Messages postés 1145 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
j'ai le modèle relationnel suivant :

CLIENTS [ClNum, ClNom, ClSecu, ClTel, ClAdresse]
COMPTES [CoId, CoNum, CoSolde, CoType, CoDateOuv, ANum_ouverture*]
TRANSACTIONS [TNum, TType, TMontant, TDate, TDateValeur, CoId*, ClNum*]
PROPRIETAIRE [ClNum*, CoId*]
AGENCES [ANum, AAdresse, ATel]
HEBERGER [CoId*, ANum*, DateDebH]
OUVERTURES [ANum*, JId*, HeureOuv, HeureFerm]
JOURS [JId, JNom]
EMPLOYES [ENum, ENom, EAdresse, ESalaire, EDateNais, EPhoto, ENum_superieur*]
AFFECTER [ENum*, ANum*, DateDeb, DateFin]

et je voudrais réaliser la requete suivante :

Quel est le nom et l’adresse des clients qui possèdent un compte ouvert à Rennes, ou qui
possèdent un compte joint avec quelqu’un qui possède un compte ouvert à Rennes ?

sachant que l'agence de rennes a pour numéro d'agence 22222

je reste complètement bloqué. pourriez vous m'aider svp ?

13 réponses

moiced59 Messages postés 1145 Date d'inscription   Statut Membre Dernière intervention   60
 
Quel sont t champs egaux
0
florian
 
mes champs égaux ? qu'entends tu par "champs égaux" ?
0
moiced59 Messages postés 1145 Date d'inscription   Statut Membre Dernière intervention   60
 
bah ds t differente table quel sont t champs egaux ex:
table client ; le champ nom
=
table banque ;le champ nomclients
0
florian
 
mes champs égaux sont faciles à retrouver puisque quelque soit la table, ils portent le même nom. juste une exception dans la table compte, le champ ANumOuverture est agle au champ ANum de la table agence. à part ça les champs égaux d'une table à l'autre portent exactement le même nom
0
florian > florian
 
oui ?
0
moiced59 Messages postés 1145 Date d'inscription   Statut Membre Dernière intervention   60
 
tu peux poster ta base?
0
florian
 
je ne sais pas comment faire :S
0
moiced59 Messages postés 1145 Date d'inscription   Statut Membre Dernière intervention   60
 
tu peux sur :
www.cijoint.fr
0
florian
 
non je ne peux pas car c'est une base de donnée .mdb qui n'est pas pris en charge par le site. par contre si cela peut t'aider, essaie de passer par l'algèbre relationnelle pour m'aider...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
moiced59 Messages postés 1145 Date d'inscription   Statut Membre Dernière intervention   60
 
tro compliquer il faut relier plusieurs base!!!

ce n'est pas ecris mais tu peux mettre des mdb qd meme
0
florian
 
non je ne peux pas je viens d'essayer ça n'a pas marché. dis moi ce qu'il te faut comme renseignements i le modèle relationnel ne suffit pas
0
moiced59 Messages postés 1145 Date d'inscription   Statut Membre Dernière intervention   60
 
dsl il faut faire un petit zip avant de le metttre

sinon:
selectionne :

CLIENTS [ClNum, ClNom, ClSecu, ClTel, ClAdresse]
COMPTES [CoId, CoNum, CoSolde, CoType, CoDateOuv, ANum_ouverture*]
TRANSACTIONS [TNum, TType, TMontant, TDate, TDateValeur, CoId*, ClNum*]
AGENCES [ANum, AAdresse, ATel]
fais t relations puis
selectionne les champ:
ClNom,ClAdresse,ANum

pour ANum critere = 22222

sachant que l'agence de rennes a pour numéro d'agence 22222
0
florian
 
wi ça dacor mé c justement les relations qui me posent pb...
enfin je pense pas ke l'on puisse faire la requete comme ça a vue d'oeil, il faut s'y pencher plus
0
moiced59 Messages postés 1145 Date d'inscription   Statut Membre Dernière intervention   60
 
bah si tu faisais un .zip je pourrai m'y pencher
0
florian
 
je fé le zip alor
0
florian > florian
 
http://www.cijoint.fr/cjlink.php?file=cj200912/cijb9FNBrU.zip
0
moiced59 Messages postés 1145 Date d'inscription   Statut Membre Dernière intervention   60
 
ok
0
florian
 
voilà...
merci de ton aide
0
moiced59 Messages postés 1145 Date d'inscription   Statut Membre Dernière intervention   60
 
tiens creer une requete ne choisi aucune table et clique sur sql en haut a gauche et copie ca :
SELECT CLIENTS.ClNom, CLIENTS.ClAdresse
FROM AGENCES INNER JOIN (COMPTES INNER JOIN (CLIENTS INNER JOIN TRANSACTIONS ON CLIENTS.ClNum = TRANSACTIONS.ClNum) ON COMPTES.CoId = TRANSACTIONS.CoId) ON AGENCES.ANum = COMPTES.ANum_Ouverture
GROUP BY CLIENTS.ClNom, CLIENTS.ClAdresse, AGENCES.ANum
HAVING (((AGENCES.ANum)="22222"));


execute et dis moi si c ca ?
0
florian
 
non. le résultat n'est pas le bon...
après je peux pas t'aider car "INNER JOIN" je ne sais pas du tout à quoi ça correspond
0
moiced59 Messages postés 1145 Date d'inscription   Statut Membre Dernière intervention   60
 
c koi le resultat voulu?
0
florian
 
les deux clients enregistés doivent apparaitre c a d guirec jean loup et guirec suzette
cependant moi j'ai une requete qui affiche les deux nom mais elle n'est pas bonne. comme il y a très peu d'enregistrements un bon résultat n'est pas forcément synonyme de bonne requete.
0
moiced59 Messages postés 1145 Date d'inscription   Statut Membre Dernière intervention   60
 
ok c bien ce que je pensai je regarde
0
moiced59 Messages postés 1145 Date d'inscription   Statut Membre Dernière intervention   60
 
SELECT CLIENTS.ClNom, CLIENTS.ClAdresse, COMPTES.CoNum, AGENCES.ANum
FROM AGENCES INNER JOIN (COMPTES INNER JOIN (CLIENTS INNER JOIN TRANSACTIONS ON CLIENTS.ClNum = TRANSACTIONS.ClNum) ON COMPTES.CoId = TRANSACTIONS.CoId) ON AGENCES.ANum = COMPTES.ANum_Ouverture
GROUP BY CLIENTS.ClNom, CLIENTS.ClAdresse, COMPTES.CoNum, AGENCES.ANum;
0
moiced59 Messages postés 1145 Date d'inscription   Statut Membre Dernière intervention   60
 
c bon g trouvé il te faut 2 requetes:

1ere requete nommé : requête1

SELECT CLIENTS.ClNom, CLIENTS.ClAdresse
FROM AGENCES INNER JOIN (COMPTES INNER JOIN (CLIENTS INNER JOIN TRANSACTIONS ON CLIENTS.ClNum = TRANSACTIONS.ClNum) ON COMPTES.CoId = TRANSACTIONS.CoId) ON AGENCES.ANum = COMPTES.ANum_Ouverture
GROUP BY CLIENTS.ClNom, CLIENTS.ClAdresse, COMPTES.CoNum
ORDER BY COMPTES.CoNum;

puis une 2eme basé sur cette 1ere

SELECT Requête1.ClNom, Requête1.ClAdresse
FROM Requête1
GROUP BY Requête1.ClNom, Requête1.ClAdresse;
0