Ik heb wat ik zeker weet, is hier nogal een remediërende vraag, maar ik kan niet voor het leven van mij deze eenvoudige join krijgen om te werken.
Kort gezegd, ik heb 3 tabellen:
- LEDEN (voornaam, achternaam),
- MEMBER_TO_GROUP (member_id, group_id)
- BETALINGEN (member_id, date, amount).
Ik wil alle betalingen ontvangen van leden in een specifieke groep. Door slechts twee van de tabellen te gebruiken, kan ik alle BETALINGEN van een specifieke groep vinden, zonder LID-informatie, of ik kan alle LID-informatie vinden zonder BETALINGSinformatie. Wanneer ik echter probeer de derde tabel toe te voegen, worden slechte gegevens geretourneerd (ik krijg bijvoorbeeld leden die niet in de groep staan). Dit is de standaardvraag die ik gebruik:
SELECT
p.*,
m.first_name,
m.last_name
FROM
members m,
payments p,
member_to_group mg
WHERE
mg.group_id = 12
AND mg.member_id = p.member_id
AND m.member_id = p.member_id
Ik weet niet zeker waar de verbinding verbroken is, maar alle hulp wordt het meest gewaardeerd.