Probleme de jointures entre 3 tables

6ril

Nouveau WRInaute
Bonjours

Je voudrais réaliser une jointure entre ces 3 tables :

forum_cat:
-id
-intitulé
-description

forum_sujet:
-id
-ref ( reference a la categorie du forum )
-sujet
-auteur

forum_rep:
-id
-ref ( reference du sujet )
-auteur
-date

Je voudrais qu'il m'affiche pour chaques categories du forum

l'intitulé du la categorie (+ la description) | le nbr de sujet | le nbr total de reponses | et cerise sur le gateau la date du dernier message ajouté.

En fait c'est un index de forum.


j'ai essayé ça :

SELECT COUNT(forum_topic.ref ) AS nbr_topic , COUNT( forum_rep.ref ) AS nbr_rep, forum_cat.id, forum_cat.intitule, forum_cat.description, forum_topic.id AS id_topic, forum_topic.ref AS ref_topic, forum_rep.ref AS ref_rep, forum_rep.auteur, DATE_FORMAT( forum_rep.date, '%d/%m/%Y' ) AS date_r
FROM (forum_cat
LEFT JOIN forum_topic ON forum_cat.id = forum_topic.ref )
LEFT JOIN forum_rep ON forum_topic.id = forum_rep.ref
GROUP BY forum_cat.id

Inutile de vous dire que ça ne marche pas : Il me retourne un mauvais nbr_topic et et un mauvais nbr_rep. 8O



Merci d'avance.
6ril.
 

MoiG1smart

WRInaute discret
Déjà, il me semble que 2 clauses count dans le même select ca ne marche pas !

Je m'orienterai personnellement vers une UNION entre 2 requêtes pour obtenir le résultat voulu.
 

MoiG1smart

WRInaute discret
Eh bien tu fais quelquechose du style :

SELECT count(toto) from TABLE1 group by titi UNION SELECT count(tata) from TABLE 2 groupby tutu

Je pense que cela devrait marcher. Il me semble par contre que cela ne marche que pour les bases Mysql version 4 ou plus récentes.
 

Discussions similaires

Haut