mal wieder DINSTINCT, GROUP BY und ORDER

Pullmann

Erfahrenes Mitglied
Hallöchen,

das Thema wurde hier ja anscheinend deshäufigeren durchgekaut dennoch komme ich nicht weiter.

Ich habe folgende Tabellenstruktur
Code:
+----+-----+---------+-------------+
| ID | cID | name    | startdate   | 
+----+-----+---------+-------------+
| 1  |   1 |     Foo | 2006-02-01  |
| 2  |   2 |     Bar | 2006-02-03  |
| 3  |   2 |  FooBar | 2006-02-04  |  
| 4  |   3 |  BarFoo | 2006-03-01  |
+----+-----+---------+-------------+
Mein Problem besteht jetzt darin das ich max 4 Einträge haben will und jeweils nur einen Eintrag pro Kategorie jedoch sortiert nach Datum. Wenn ich jetzt jedoch
HTML:
GROUP BY categorieID ODER BY startdate DESC
verwende nimmt er nur den jeweils ersten Eintrag der Kategorie.

Nun habe ich gelesen das man die über DISTINCT lösen kann was allerdings nicht funktioniert.
HTML:
SELECT DISTINCT `categorieID`, name, list_element, forwardlink FROM kae_com_editorshipsystem_entries  ORDER BY startdate ASC LIMIT 4

Dann hatte ich noch etwas anderes gefunden bekomme allerdings hier diese Fehlermeldung:Gruppierung nicht möglich bei 'categorieID' bei dieser Abfage:

HTML:
SELECT ID, categorieID, name, list_element, forwardlink, MAX( categorieID ) AS categorieID FROM kae_com_editorshipsystem_entries GROUP BY categorieID ORDER BY startdate DESC LIMIT 4

kann mir einer weiterhelfen wie ich jetzt pro Kategorie nur einen Eintrag bekomme und das dann auch noch nach Datum sortiert?
 
Zuletzt bearbeitet:
Du möchtest ja nur einen Eintrag pro Kategorie haben, welcher Eintrag soll das denn sein? Der mit dem neuesten/ältesten Datum oder so was?
 
Zurück