Hallo,
habe ein Problem mit einer MySQL-Abfrage, ich hoffe Ihr könnt mir helfen...
Ich habe 7 Hauptforen ich möchte aus einer Tabelle mit der Bezeichnung „posts“ die letzten 7 Forumsbeiträge selektieren. Mit Hilfe des Feldes Thread_id möchte ich gleichzeitig tabellenübergreifend den Namen des Threads selektieren.
Soweit funktioniert alles bestens.
Die Abfrage hierfür sieht wie folgt aus:
SELECT
posts.forum_id,
posts.id,
posts.usr_id,
posts.text,
posts.datum,
posts.thread_id,
threads.name
FROM
posts,
threads
WHERE
posts.thread_id = threads.id
ORDER BY
posts.datum DESC
LIMIT
0,7
Da ich von jedem der 7 Foren jeweils nur einen Eintrag ausgegeben bekommen möchte, habe ich unter dem WHERE-statement noch ein GROUP BY posts.forum_id eingebaut.
Nun bekomme ich jedoch nicht mehr die letzten Posts der 7 Foren ausgegeben, sondern die ersten. Durch das ORDER BY Statement werden diese lediglich untereinander sortiert, sodass der aktuellste Eintrag der „alten“ Posts ganz oben steht.
habe ein Problem mit einer MySQL-Abfrage, ich hoffe Ihr könnt mir helfen...
Ich habe 7 Hauptforen ich möchte aus einer Tabelle mit der Bezeichnung „posts“ die letzten 7 Forumsbeiträge selektieren. Mit Hilfe des Feldes Thread_id möchte ich gleichzeitig tabellenübergreifend den Namen des Threads selektieren.
Soweit funktioniert alles bestens.
Die Abfrage hierfür sieht wie folgt aus:
SELECT
posts.forum_id,
posts.id,
posts.usr_id,
posts.text,
posts.datum,
posts.thread_id,
threads.name
FROM
posts,
threads
WHERE
posts.thread_id = threads.id
ORDER BY
posts.datum DESC
LIMIT
0,7
Da ich von jedem der 7 Foren jeweils nur einen Eintrag ausgegeben bekommen möchte, habe ich unter dem WHERE-statement noch ein GROUP BY posts.forum_id eingebaut.
Nun bekomme ich jedoch nicht mehr die letzten Posts der 7 Foren ausgegeben, sondern die ersten. Durch das ORDER BY Statement werden diese lediglich untereinander sortiert, sodass der aktuellste Eintrag der „alten“ Posts ganz oben steht.