yo,
Wenn man einen neuen Beitrag in eine Topic schreibt, wird in die Tabelle "forum2_topics" und in "forum2_forums" die Felder "last_post_id", "last_post" und "last_poster" upgedated.
Der SQL (aus meinem OP) liest aber die Daten aus forum2_forums aus, und diese stellt er dann dar.
ahh ok, die tabelle forum2_forums hat also auch eine selbstreferenz. die dient wohl dazu, den letzten beitrag eines topics zu speichern, die anderen die insgesamt letzten des forums.
Und wo ist hier der OUTER JOIN?
LEFT JOIN ist ein OUTER JOIN, genauso wie RIGHT JOIN einer ist.
Na gut, also, deine beiden SQLs geben mir dieselbe Fehlermeldung zurück: "Unknown column 't.last_post_id' in 'on clause'".
das liegt daran, dass ich mich verschrieben habe und den alias namen für die tabelle hinter die ON klausel geschirben habe, er gehört aber davor, also:
LEFT JOIN forum2_topics t ON (t.forum_id = f.id)
bzw. LEFT JOIN forum2_topics t ON (t.last_post_id = f.id)
zweiteres sollte dir die richtige anzahl von ergebnis-datensätze liefern, die erste alle topics des forums.
Ilja