OVH Cloud OVH Cloud

Requête union

4 réponses
Avatar
Caroline
Salut,

j'ai une table EXP qui permet de lier "TypeEXP" et "PrixEXP"
J'ai un form A ou je rentre "Date", "TypeEXP" (menu déroulant), "Nombre",
"Montant" ("montant" étant calculé automatiquement à partir de "Prix EXP de
la table EXP et de "Nombre")
J'ai un form B ou je rentre "Date", "Type EXP"(menu déroulant), "Durée"

Je cherche à faire une requête qui me donnerait sur une periode donnée :

TypeExp | Somme de Montant | Somme de durée

ça à l'air simple mais j'obtiens des résultats qui ne sont pas justes dans
les sommes;
Je sais qu'il serait plus simple de mettre la durée dans la même table mais
pour des raisons trop longues à expliquer je ne peux pas .
Si quelqu'un peut m'expliquer la façon de procéder...
Merci

4 réponses

Avatar
joyeux atchoum
Dans l'article <uf$, Caroline vous
avez dit...

Salut,

j'ai une table EXP qui permet de lier "TypeEXP" et "PrixEXP"
J'ai un form A ou je rentre "Date", "TypeEXP" (menu déroulant), "Nombre",
"Montant" ("montant" étant calculé automatiquement à partir de "Prix EXP de
la table EXP et de "Nombre")
J'ai un form B ou je rentre "Date", "Type EXP"(menu déroulant), "Durée"

Je cherche à faire une requête qui me donnerait sur une periode donnée :

TypeExp | Somme de Montant | Somme de durée

ça à l'air simple mais j'obtiens des résultats qui ne sont pas justes dans
les sommes;


ben non, je ne te suis pas je ne vois pas où tu souhaite faire une
union
tu indiques 2 forms et une table. typeexp prixexp ce sont des tables de
references ?
peux tu detailler tes tables ?

mais le peu que j'en sors ce n'est pas une union mais plutot une
jointure que tu dois faire
mettre dans ta requete en mode graphique toutes tes tables et les
reliées entre elles
puis faire tes operations

ja,)
qui n'a pas vraiment les yeux devant les trous et qui devrait penser à
prendre un petit dej decent un de ces 4 ;=)

Avatar
Caroline
Salut,
Resumons, j'ai :

Table A avec "TypeExp" et "MontanExP"
Table B avec "Date", "NomClient","TypeExp"
Table C avec "Date", "NomOp", "NomClient", "TypeExp" et "Durée"

Je veux un requête qui me donne sur la période que je choisirai :
"NomClient" | TypeExp (regroupé) | Somme de Montant | Somme
de durée

Exemple :

Pour le mois de juillet :
Client 1 Exp1 5000 ? 3 H
Client 1 Exp2 2500? 4 H
Client 2 Exp1 650? 2 H

C'est plus clair ?

pour l'instant j'ai fait comme tu as dit j'ai mis les table B et C et je les
ai liées, mais les sommes se cumulent les unes aux autres

"joyeux atchoum" a écrit dans le message de
news:
Dans l'article <uf$, Caroline vous
avez dit...

Salut,

j'ai une table EXP qui permet de lier "TypeEXP" et "PrixEXP"
J'ai un form A ou je rentre "Date", "TypeEXP" (menu déroulant),
"Nombre",


"Montant" ("montant" étant calculé automatiquement à partir de "Prix
EXP de


la table EXP et de "Nombre")
J'ai un form B ou je rentre "Date", "Type EXP"(menu déroulant), "Durée"

Je cherche à faire une requête qui me donnerait sur une periode donnée :

TypeExp | Somme de Montant | Somme de durée

ça à l'air simple mais j'obtiens des résultats qui ne sont pas justes
dans


les sommes;


ben non, je ne te suis pas je ne vois pas où tu souhaite faire une
union
tu indiques 2 forms et une table. typeexp prixexp ce sont des tables de
references ?
peux tu detailler tes tables ?

mais le peu que j'en sors ce n'est pas une union mais plutot une
jointure que tu dois faire
mettre dans ta requete en mode graphique toutes tes tables et les
reliées entre elles
puis faire tes operations

ja,)
qui n'a pas vraiment les yeux devant les trous et qui devrait penser à
prendre un petit dej decent un de ces 4 ;=)



Avatar
Caroline
l'intérêt des 2 tables c'est que les saisies ne se font pas au même moment
et à partir de documents différents, d'où justement l'intérêt de relier les
données ensuite sinon je me ferait pas chi... avec ça

"joyeux atchoum" a écrit dans le message de
news:
S'lt

Table A avec "TypeExp" et "MontanExP"
Table B avec "Date", "NomClient","TypeExp"
Table C avec "Date", "NomOp", "NomClient", "TypeExp" et "Durée"
Je veux un requête qui me donne sur la période que je choisirai :
"NomClient" | TypeExp (regroupé) | Somme de Montant |
Somme


de durée

Exemple :

Pour le mois de juillet :
Client 1 Exp1 5000 ? 3 H
Client 1 Exp2 2500? 4 H
Client 2 Exp1 650? 2 H

C'est plus clair ?


on va bien voir ;=)
Je ne vois pas trop l'interet de tes tables B et C elles sont
identiques à la durée prés (bizarre)

bon je suppose que TableA est une table de reference pour chaque
typeExp il exite un unique montantExp.


J'aurais bien une idée mais honnetement j'ai du mal à voir l'interet de
B et C , as tu indiqué tout tes champs entre autre les clefs ?

Comme dirait notre bon Raymond : à suivre

ja;)
qui n'a pas les yeux en face des trous :=)




Avatar
joyeux atchoum
S'lt

l'intérêt des 2 tables c'est que les saisies ne se font pas au même moment
et à partir de documents différents, d'où justement l'intérêt de relier les
données ensuite sinon je me ferait pas chi... avec ça


oki, mais je veux pas continuer à etre casse pieds mais je pense que tu
vas pas mal t'emmerder avec ce systéme encore par la suite
tu es sur de ne pas pouvoir mettre une durée null ou 0 et conserver
uniquement TableC ?

non ?, bon ben je te propose de faire 3 requetes

la premiere :
tu lies Table A et Table C via le champ typeex
tu regroupe sur Nomclient et typeexp
tu somme durée
tu somme montantexp

la deuxieme :
tu lies table B et table A via le champ typeex
tu regroupe sur Nomclient et typeexp
tu somme montantexp

la troisieme
tu recuperes les 2 requetes precedentes
tu lies entre nom et typeex
tu fais un champ qui somme les 2 montants du genre
expr1 : Requete1.montant + Requete2.montant

je suppose que les 2 requete retourne les meme client pour les meme
typeex
autrement (meme client mais typeex different) : tu dois inserer table A
et faire un leftjoin (ou rightjoin) et lier table A a la requete 1
Table A a la requete 2 et supprimer le lien entre les 2 requete sur
typeex

autrement : tu adapte en fonction du champ qui retourne les memes infos


desolé de ne pouvoir te proposer mieux mais c'est un peu bizarre tes
tables ;=)
au fait le fait d'utiliser nom_client pourrait eventuellement te poser
pb il faut mieux utiliser une identifiant
et puis pour finir (promis apres je me tais) l'avantage d'une base de
donnée c'est de pouvoir s'affranchir du temps
donc meme si tu inseres tes données à des instants different tu peux
toujours utiliser la meme table


voili
ja,)
qui vient d'etre bien casse pied mais faut pas m'en vouloir j'ai pas
encore pris mon café :=)