login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Query die dezelfde ID's bij elkaar optelt?

Offline liquido - 23/10/2006 13:07
Avatar van liquidoNieuw lid Hallo mensen,

Ik zit er nu al een tijdje mee te klooien, maar het wilt niet echt lukken. Ik ben bezig met een winkelwagensysteempje. Het systeem bewaard alle orders in de tabel orders. Verder heb ik nog een tabel producten. Ik ben nu bezig met een financiele bon waarop komt te staan, het totale aantal producten die zijn verkocht en het totaalbedrag hiervan. Dus als er een product vaker is verkocht wordt deze bij elkaar opgeteld.

http://www.plaatscode.be/2939/ (sql structuur)
http://www.plaatscode.be/2940/ (huidige query)

Dus dan zou ik bijv. zo'n array uiteindelijk willen krijgen:

Aantal, Product, Per_stuk, Totaalbedrag
----------------------------------------
10, lucifers, 0.5, 5
2, spijker, 1, 2
8, hamer, 1.5, 12

=> Dus ik wil alle producten met dezelfde ID bij elkaar optellen.

Ik dacht zelf aan een subquery met Count(), maar ik weet niet hoe ik moet beginnen.
Tips zijn welkom! 

2 antwoorden

Gesponsorde links
Offline Thomas - 23/10/2006 13:49
Avatar van Thomas Moderator Ik denk dat je SUM moet gebruiken, in plaats van COUNT.

Bij COUNT krijg je bij elk record een 0 of een 1, afhankelijk van of er aan de WHERE-clause is voldaan.
Met SUM kun je de waarden van een kolom optellen.
Offline liquido - 23/10/2006 14:01 (laatste wijziging 23/10/2006 14:06)
Avatar van liquido Nieuw lid Bedankt voor je reactie ik hebnu dit in elkaar geknutseld:
Alleen de total_aantal klopt niet.. k heb er namelijk 32 in mijn tabel staan en het result is nu 3360  

SELECT p.naam, a.bedrag, SUM( a.korting ) AS total_korting, SUM( a.aantal ) AS total_aantal
FROM producten p, orders o, orders_artikel a
WHERE a.artikelID = p.pID
GROUP BY a.artikelID

edit:
het werkt nu:

SELECT p.naam, a.bedrag, SUM( a.korting ) AS total_korting, SUM( a.aantal ) AS total_aantal FROM producten p, orders o, orders_artikel a WHERE o.orderID = a.orderID AND a.artikelID = p.pID AND a.soortID = '1' GROUP BY a.artikelID ORDER BY p.naam;
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.186s