simpele SELECT geeft andere waarden terug dan select met joins

Status
Niet open voor verdere reacties.

bluesbrother

Gebruiker
Lid geworden
20 sep 2006
Berichten
72
Tja een titel verzinnen voor het onderstaande is niet makkelijk.

Maar het gaat om het volgende. Ik heb een database met gegevens er in (echt waar?).
Dit zijn mensen die intresse hebben getoond in bepaalde opleidingen op de school waar ik werk.
Ik wil nu van het lopende schooljaar de intresses hebben en hoe vaak er intresse is getoond in de diverse opleidingen.
Daarvoor heb ik de volgende SQL statement gebruikt:

Code:
SELECT
 COUNT( a.IDContactPersoon ) AS Aantal,
 b.IDOnderwijsGroepOpleidingen,
 d.txtOnderwijsGroepOpleidingen
 
FROM jos_marcip_contactpersoon AS a 

LEFT JOIN jos_marcip_tsn_intressescholen AS b ON a.IDContactPersoon = b.IDContactPersoon
LEFT JOIN jos_marcip_ogtopleidingen AS d ON b.IDOnderwijsGroepOpleidingen = d.IDOnderwijsGroepOpleidingen

WHERE a.DatumEersteContact BETWEEN '2009-09-01' AND '2010-07-01'

GROUP BY b.IDOnderwijsGroepOpleidingen
ORDER BY b.IDOnderwijsGroepOpleidingen


Dit werkt ik krijg mooi een overzicht te zien met:

203 Verpleegkundige
132 Verzorgende
enz

Dus 203 mensen die intresse hebben in de opleiding verpleegkundige. enz
We hebben nogal wat opleidingen dus dat is een lange lijst.
Als ik alle geintresseerde optel kom ik aan 5244 mensen (contatcpersonen)
Als ik een simpele query bekijk van hoeveel contactpersonen erbij gekomen zijn in die periode kom ik op veel minder uit.
namelijk 3648.

Code:
SELECT * FROM `jos_marcip_contactpersoon` WHERE DatumEersteContact BETWEEN '2009-09-01' and '2010-07-01'

Ik snap niet wat het verschil in aantal contactpersonen dan kan zijn. Moeten toch hetzelfde aantal zijn ?
 
Een logische verklaring zou zijn dat sommige mensen interesse hebben getoond in meerdere opleidingen, je zou verwachten dat er dan 1 contactpersoon toegevoegd wordt, maar meerdere interesse rijen.
 
Klopt inderdaad. Contactpersonen konden meerdere opleidingen kiezen.
Ik zag het te laat.
Ik sluit het af. Bedankt.
bb :cool:
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan