Calculer la somme à partir de de deux tables

abdouel04 Messages postés 1 Date d'inscription   Statut Membre Dernière intervention   -  
flokocha Messages postés 1510 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

J'ai deux table:
cmd(codeRep,mt) et fact(codeRep,net) :
-Cmd:
coderep mt
000 10
000 20
200 40
200 15
300 25
300 5

-Fact :
coderep net
000 100
000 1000
000 2000
je veux le résultat suivant:

coderep mt net
000 30 3100
200 55 0
300 30 0
J'ai essayé la requête suivante:
SELECT c.coderep,SUM(mt),SUM(net)
FROM cmd c ,fact f where c.coderep=f.coderep
GROUP BY c.coderep
ca retourne une seule lignes avec un calcule erroné:
000 1710 6240
Merci pour votre aide.

1 réponse

flokocha Messages postés 1510 Date d'inscription   Statut Membre Dernière intervention   281
 
Ça devrait fonctionner, à ceci près que tu auras des "null" à la place des 0 dans ta colonne "net" :

select coderep, sum(mt) as sum_mt, sum_net from cmd
left join (select coderep, sum(net) as sum_net from fact group by 1) as f using(coderep)
group by coderep;
0