Joina flera tabeller och summera
Jag har tre tabeller och jag får dubletter i svar
Jag har tre tabeller en med kunder, en order och en med fakturering
Tabell Kunder Tabell order Tabell Fakturering
IDnr Namn idnr datum belopp idnr datum belopp 2
123 xxx 123 2010-01-01 100 000 123 2010-03-03 100 000
124 YYY 123 2010-02-02 200 000 124 2010-03-03 50 000
124 2010-01-01 50 000
kod
Select
t.idnr as kund,
t.namn,
t1.idnr,
t2.idnr,
t1.belopp as bel,
t2.belopp1 as bel1
SUM(t1.belopp) as bel,
SUM(t2.belopp) as bel1
from kunder t
left join order t1 on t.idnr=t1.idnr
left join order t2 on t.idnr=t2.idnr
where t.idnr = '123'
group by
t.idnr,
t.namn,
t1.idnr,
t2.idnr,
t1.belopp,
t2.belopp1
order by kund
När jag får ut resultatet så blir det så här
idnr bel bel2
123 300 000:- 200 000 vilket blir fel här skall det vara stå 100 000
Hur göra
Svara
Sv: Joina flera tabeller och summera
Kör samma fråga utan group by så ser du varför.
Min spontana tanke är att köra group by på t1 och t2 först, (dvs t1->t1sum, t2->t2sum, och sen t join t1sum join t2sum)
Svara