zit met een probleempje.. Het gaat om 3 tabellen, users, factories, casinos.
User heeft column id die primary is, en factories en casinos hebben allebei een column owner die naar users.id verwijst.
De relatie van users.id en factories.owner is een één op veel relatie. Een gebruiker kan meerdere factories hebben. Zelfde geldt voor casinos.
Nu wil ik alle kolommen uit users hebben en daarbij per gebruiker hoeveel casinos en factories hij heeft.
ik had zoiets:
SELECT users.*, COUNT(casinos.id), COUNT(factories.id) FROM users
LEFT JOIN casinos ON casinos.owner = users.id
LEFT JOIN factories ON factories.owner = users.id
GROUP BY users.id
Nu heeft gebruiker met id 1, 36 factories en 12 casinos. En de fout is dat COUND(casinos.id) en COUNT(factories.id) beide 432 bevatten ( 36 * 12 ). Hoe los ik dit op.
Alvast bedankt