Dag allemaal,
Ik heb een hoop lopen prutsen maar ik kom er niet uit.
In ons systeem hebben gebruikers ontwerpen, deze ontwerpen kunnen door andere gebruikers worden gekocht. Bij een verkoop wordt het een order_regel.

Ik wil per gebruiker weten hoevaak zijn ontwerpen (samen) zijn verkocht.
Henk 7
Frans 5
Jan 0

De tabellen zien er ongeveer zo uit:
-ontwerp
id
gebruiker_id
ontwerp_afbeelding

-gebruiker
id
naam

-order_regel
id
ontwerp_id
order_id

Groeten Jan-Berend







Waarom niet een tabel extra:
tabel_verkopen:
- gebruiker_id_verkoper
- ontwerp_id
- gebruiker_id_koper
- datum/tijd
- prijs

Bij iedere verkoop zet je er een regel bij.
Aantal verkopen heb je dan zo gevonden... en prijzen etc etc etc.
Er is nog een tabel "Order" waar de koper, datum enz is aangegeven. Prijs is een vast bedrag.
Oke, maar daarin is niet opgeslagen wie wat koopt?
Als je dat erbij zet ben je echt zo klaar. 1 goede SQL (wat je wilt hebben) en tatataaaa...
-Order
gebruiker_id (koper)
datum_aankoop

Wat k nu graag wil weten is die goede sql ;)
Berry: Zo'n tabel heb je niets aan, dat is geen koppeltabel...
Ik heb inmiddels een oplossing gevonden in de vorm van een view:

SELECT ontwerp.gebruiker_id, COUNT( * ) AS verkopen
FROM order_regel
INNER JOIN ontwerp ON order_regel.ontwerp_id = ontwerp.id
GROUP BY ontwerp.gebruiker_id

Bedankt voor de tips!

Reageren