ATOUTFOX
COMMUNAUTÉ FRANCOPHONE DES PROFESSIONNELS FOXPRO
Visual FoxPro : le développement durable

Forum AtoutFox : Re: R=c3=a9sultats d'une requ=c3=aate multipli=c3=a9s   

Sujet

rss Flux RSS des derniers messages

Vous devez vous identifier pour pouvoir poser une question ou répondre.

mer. 20 janvier 2016, 17h20
Jean-Claude Rivi=c3=a8re
atoutfox.public.association

Re: R=c3=a9sultats d'une requ=c3=aate multipli=c3=a9s

Bonjour Bernard,

Un peu au hasard car je ne vois pas ta requête...
Vu ce que tu décris, je suppose que tu as une requête avec des jointures
sur plusieurs tables et que tu fais des calculs sur ces différentes tables ?
Quelque chose du style :
select a.a1, sum(b.ch1) as ResultB, sum(c.ch1) as ResultC
from a
join b on a.id = b.id_a
join c on a.id = c.id_a
where predicat
group by a.a1

Dans ce cas, a priori, tu devrais avoir une explication aux prochaines
rencontres : j'espère que tu viendras ! :-)

Pour l'instant, sans entrer dans le détail, si ta requête suis la
structure ci-dessus, tu pourrais la modifier de la façon suivante, en
utilisant des sous-requêtes corrélées :

select a.a1,
(select sum(b.ch1) from b where b.id_a = a.id) as ResultB,
(select sum(c.ch1) from c where c.id_a = a.id) as ResultC
from a
where predicat

(le group by disparaît puisque les requêtes internes font les calculs)

Cordialement,

JCR


Le 20/01/2016 14:00, Bernard Avril a écrit :
> Bonjour,
>
> J'ai une requête pour extraire des factures d'une table d'expéditions, avec fonctions comme sum(salprc*qty) et des tables jointes.
>
> Jusqu'à ce matin tout allait bien, or dans les résultats d'aujourd'hui j'ai un un client qui a trois factures dont les chiffres sont triplés. Mais j'ai aussi un client qui a deux factures et dont les résultats sont corrects.
>
> J'ai vérifié, mon client n'apparait qu'une fois dans les tables où il est censé apparaitre, les données des champs de la requête sont corrects, je n'ai rien vu dans les autres champs des tables concernées quoi que ce soit qui pourrait expliquer le problème. Même chose en comparant les données du client à 3 factures avec celles du client à 2 factures.
>
> Je dois rater quelque chose d'évident mais je ne sais plus où regarder. Toute suggestion serait la bienvenue.
>
> Merci.
>
> Bernard
>
>
Permalink : http://www.atoutfox.org/nntp.asp?ID=0000017204
20 088 messages dans le forum • Liste complète des messages

Publicité

Les pubs en cours :


www.atoutfox.org - Site de la Communauté Francophone des Professionnels FoxPro - v3.4.0 - © 2004-2024.
Cette page est générée par un composant COM+ développé en Visual FoxPro 9.0-SP2-HF3