ich bin momentan dabei mir ein wenig mehr PHP anzueignen und schreibe als Übung ein kleines CMS.
Nun sitz ich aber bei Anzahl der Kommentare fest. Ich möchte in einem Statement gerne, die Infos zum Artikel haben und die Anzahl der Kommentare.
Ich habe ich die Tabelle comments, die neben der comment_id, noch die Felder für die Eingabe enthält (Name, Email, ...) und das Feld comment_item_id in, dass die selbe Nummer kommt wie die Artikel ID. Sprich, wird ein neuer Kommentar zu dem Artikel mit der ID 3 abgegeben, wird in der DB unter comment_item_id ebenfalls eine 3 eingetragen.
Nun habe ich mich bereits mit Joins und Count beschäftigt und stehe immer noch auf dem Schlauch.
Die Abfrage bisher sieht so aus:
SELECT article_id, article_title, article_content, article_date, article_kategorie, article_subkategorie, article_skill, article_tags, article_views, COUNT(comments.comment_item_id) AS NumberOfComments FROM article INNER JOIN comments ON article.article_id = comments.comment_item_id WHERE article_active = 1 ORDER BY article_date DESC LIMIT 5
Problem ist nun, es wird immer nur ein Artikel angezeigt. Selbst wenn mehrere Artikel Kommentare haben oder nicht. Auch ein LEFT JOIN brachte nichts.
Ich würde mich freuen, wenn mir da jemand weiterhelfen könnte.
Grüße,
Tim