le coalesce gère juste le fait que ta valeur soit null ou pas... (tu as aussi ifnull(CHAMP, Valeur de remplacement))
ce sont tes jointures qui n'étaient pas bonnes
le fait d'écrire des inner join fait que tu vois mieux les jointures...
tu as 3 tables avec Ref comme clé,
mais dans ta clause where :
___________________________________
WHERE calendrier. REF=stages.REF
AND Conditions.............
GROUP BY calendrier. REF
___________________________________
tu ne fais qu'une jointure sur calendrier et stages...
donc produit cartésien sur la troisième table...
et donc des totaux farfelus...
il faut :
________________________________________________
tu y étais presque:
________________________________________________
J'ai même essayé
calendrier.REF=stages.REF AND calendrier.REF=bilan2014
_________________________________________________
WHERE
calendrier. REF=stages.REF
and
calendrier.REF=bilan2014.REF (ou stages.REF = bilan2014.REF, à toi de voir)
and
tes conditions ...
NB: Faire une table bilan avec un nom qui correspond à l'année, c'est pas terrible , lol... car l'année prochaine, tu fais quoi? tu modifies toute ta BD et ton application avec une table bilan2015?
Message édité par gpl73 le 18-09-2014 à 08:33:29
---------------
mieux vaut être un con au chaud, qu'un con gelé lol