[MySQL 4.1] Count sur jointure avec null
Bonjour,
voilà, j'ai 3 tables, nature_evenement, type_evenement et modele_evenement. A une nature est associée 0..n type, et à un type est associé 0..n modele. Donc un modele correspond à un type, et donc à une nature.
Je veux compter, pour chaque naturele nombre de modele_evenement existant :
Code:
1 2 3 4 5 6 7 8 9
| SELECT nature_evenement.nom, count(*)
FROM nature_evenement,model_evenement,type_evenement
WHERE type_evenement.IdType_Evenement = model_evenement.Type_Evenement_IdType_Evenement
AND type_evenement.nature_evenement_IdNature = nature_evenement.IdNature
AND type_evenement.actif=1
AND nature_evenement.actif=1
AND model_evenement.actif=1
GROUP BY nature_evenement.nom
ORDER BY nature_evenement.nom ASC |
Le souci étant que les natures n'ayant pas de d'evenement n'apparaissent pas; Je suis donc parti sur une requete à jointure externe :
Code:
1 2 3 4 5 6 7 8 9
| SELECT nature_evenement.nom, count(*)
FROM nature_evenement,model_evenement
LEFT OUTER JOIN type_evenement ON (type_evenement.IdType_Evenement = model_evenement.Type_Evenement_IdType_Evenement
AND type_evenement.nature_evenement_IdNature = nature_evenement.IdNature
AND type_evenement.actif=1)
WHERE nature_evenement.actif=1
AND model_evenement.actif=1
GROUP BY nature_evenement.nom
ORDER BY nature_evenement.nom ASC |
Avec cette requete, toutes mes natures s'affichent, mais elle ont chacune la meme quantité (ce qui est faux).
Comment dois je corriger ces requetes ? Merci d'avance :)