Bonjour,
je suis actuellement sur une requête que je n'arrive pas à résoudre. Mon problème est que je voudrais tout faire en une seule requête mais je commence à douter que cela soit possible. En gros j'ai une table d'objet, et à coté 2 autres tables qui référencent ces objets(elles possèdent donc des clés étrangères vers la 1ere table).
Je voudrais compter pour chaque objet de la 1ere table, combien d'occurence j'en ai dans chacunes des 2 autres tables.
Voila ce que j'ai actuellement :
Le problème avec cette requete c'est qu'il fait d'abord la jointure avec T2, et ensuite il fait la jointure de tous les résultat de T2 avec T3.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 SELECT `NAME`, count(T2.ID) as NB_T2, count(T3.ID) as NB_T3 FROM `T1` LEFT OUTER JOIN T2 ON T2.ID = T1.ID LEFT OUTER JOIN T3 ON T3.ID = T1.ID GROUP BY T1.ID ORDER BY T1.NAME
Donc count(T2.ID) et count(T3.ID) est finalement égal au nombre réel de ligne de T2 multiplié par le nb de ligne de T3.
Voila, si quelqu'un sait comment corriger cette requete, je suis preneur![]()
Partager