PHP interesse |
|
Hey ik ben bezig met een forum, zeer uitgebreid en ik ben hem geschikt aan het maken voor grootgebruik, dus dat betekent zo min mogelijk queries. Dat betekent weer dat ik met JOINs aan het werk ben alleen nu stuit ik tog op een probleem.
Voordat je verder leest, als je geen verstand heb van MySQL JOINs reageer dan niet zonde van de tijd en de moeite
Ik probeer mijn querie zo te maken dat
1. de sticky topics bovenaan komen te staan
2. de nieuwste reactie / topic bovenaan komen te staan (wel onder de sticky's natuurlijk
Nu blijf ik steken op punt 2. Het lijkt wel of / of... of alleen laatste reactie of alleen nieuwe topic
SELECT * , COUNT( DISTINCT R.reactie_ID ) AS countReactie
FROM forumFora F
LEFT JOIN forumTopics T ON ( F.forum_ID = T.topic_ForumID )
LEFT JOIN forumReacties R ON ( T.topic_ID = R.reactie_TopicID )
LEFT JOIN forumLeden L ON ( T.topic_LedenID = L.leden_ID )
WHERE T.topic_ForumID =9
GROUP BY T.topic_ID
ORDER BY T.topic_Sticky DESC , R.reactie_PostDatum DESC , T.topic_PostDatum DESC
SELECT * , COUNT( DISTINCT R.reactie_ID ) AS countReactie FROM forumFora F LEFT JOIN forumTopics T ON ( F.forum_ID = T.topic_ForumID ) LEFT JOIN forumReacties R ON ( T.topic_ID = R.reactie_TopicID ) LEFT JOIN forumLeden L ON ( T.topic_LedenID = L.leden_ID ) WHERE T.topic_ForumID =9 GROUP BY T.topic_ID ORDER BY T.topic_Sticky DESC , R.reactie_PostDatum DESC , T.topic_PostDatum DESC
Hoop dat er mensen zijn die dit kunnen oplossen of iig mij in die richting kunnen sturen.
|