yves dutrieux a écrit :

Bonjour,


Le 10/08/06, CAPITAINE David <[EMAIL PROTECTED]> a écrit :


J'ai préféré relancé un nouveau sujet par soucis de clarté !
Voilà j'ai réussi à créer plusieurs tables !
A créer une requête me permettant de faire Nom ESPACE Prenom

Ensuite création d'un formulaire pour pouvoir rentrer mes matchs
associés à mes adhérents pour les déplacements (pour cela j'ai dû créer
une vue de la requête (ce qui me fait une nouvelle table) et associer
une listbox à cette vue !)


ça marche les données sont bien créées dans la table ; maintenant je
voudrais faire une requête sur plusieurs tables :
Je m'explique =>     j'ai ma table (Listedeplacements) qui contient (ID,
ID MATCH, IDAdherent)
                            j'ai ma table (ListeAdherents) qui contient
(ID,Nom, Prenom)
                        j'ai ma table (ListeMatchs) qui contient
(ID,VILLE, kms)
Je voudrais extraire par un formulaire les différents déplacements
effectués par l'adhérent Jules César  sur lequel je verrais l'adhérent
Jules César, Barlin (ville), kms
Jules César, Paris (ville), kms
Jules César, Londres (ville), kms



select IDAdherent, IDMatch, VILLE, sum(kms)
from Listedeplacements, ListeAdherents, ListeMatchs
where IDadherent = ListeAdherents.ID and IDMatch = ListeMatchs
group by IDAdherent, IDMatch, VILLE

devrait le faire (pas testé).



et cerise sur le gâteau, le total de kilomètre (multiplier par une

variable (prix au kms)



A voir si calculable via le formulaire , sinon

il y a aussi

select IDAdherent, sum(kms)
from Listedeplacements, ListeAdherents, ListeMatchs
where IDadherent = ListeAdherents.ID and IDMatch = ListeMatchs
group by IDAdherent

devrait avoir le total de kms par adhérent à multiplier par le prix.
NB : il est possible de le fixer lors du select si on créer dynamiquement le
select (mais je sais pas si c'est possible à partir de Base). :-/

Yves

CA SERAIT SUPER !



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




Bonjour,

Sans être un très grand spécialiste de la question (je suis parfois très surpris du résultat de mes requêtes Sql), je pense qu'il existe quelques difficcultés.

D'abord sur la désignation de tes colonnes, dans la mesure où tu as plusieur fois "ID", ce qui te contraint à recourir à la désignation (en cas de sélection sur plusieurs tables) intégrale du type ListeAdéhrents.ID pour la distinguer de ListeDéplacements.ID, ce qui à la longue est un peu usant ; une syntaxe du type IdDep, IdMa et IdAdh dans la table elle-même pourrait être plus judicieuse et éviterait ensuite les erreurs liées à l'ambiguïté de désignation de la colonne.

Concernant la solution proposée par Yves, je crains que la syntaxe "and IDMatch = ListeMatchs" ne renvoie une erreur, dans la mesure où "ListeMatch" est une table et non une colonne d'une table ; à moins que Yves n'aie voulu écrire ListeMatchs.ID (au passage, je crois que "match" au pluriel, s'écrit "matches").

Bon courage.

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Répondre à