MySQL Abfrage

Hallo,

ich habe da ein (Verständnis?)Problem mit dem GROUP BY Statement bei der Abfrage von einer MySQL-Datenbank.

Angenommen ich habe folgende Datensätze:
+------------+-------------+------------------+-----+
|Kategorie | Produktname | Erscheinungsjahr | Preis|
+------------+-------------+------------------+-----+
|Handys | Nokia 2222 | 2000 | 299 |
|Handys | Nokia 2233 | 2003 | 199 |
|Handys | Nokia 2244 | 2001 | 99 |
|Handys | Nokia 2255 | 2000 | 249 |
|TV | MeinTV | 2000 | 549 |
|TV | DeinTV | 1999 | 555 |
|TV | TVTV | 2005 | 666 |
|TV | SR65 |1988 | 199 |
+------------+-------------+------------------+-----+

Nun möchte ich diese Datensätze gemäß der Kategorie Gruppiert auslesen, sodass ich also folgendes erhalte bzw. ausgeben kann:

Handys:
Nokia 2222 - 2000 - 299
Nokia 2233 - 2003 - 199
Nokia 2244 - 2001 - 99
Nokia 2255 - 2000 - 249

TV:
...

Müsste das nicht eigentlich wie folgt funktionieren:
SELECT * FROM `tabellenname` GROUP BY `Kategorie`

Ich möchte keine Aggregationsfunktion nutzen (brauche ich hier ja nicht), aber so erhalte ich mit dem Group By immer nur einen Datensatz aus jeder Kategorie.

Was mache ich falsch?
 
Dafür nutzt Du order by Kategorie und nicht Group by ...

group by ist genau dazu da, alle Datensätze zusammenzufassen, die dieselben Werte im group by stehen haben.
 
Back
Top