.Philipp: [MySQL] Distinct oder group by

Beitrag lesen

Hallo,

mir erschließt sich nicht so ganz, was distinct von group by unterscheidet und was ich in meinem Fall nehmen sollte (denn aktuell liefern beide das richtige Ergebnis).

Meine DB sieht so aus:

id | name |    datum   | count
 1 |   A  | 2008-01-01 |   5
 2 |   B  | 2008-01-01 |   1
 3 |   A  | 2008-01-02 |   7
 4 |   A  | 2008-01-03 |   4
 5 |   B  | 2008-01-03 |   3

So, nun möchte ich diese Ausgabe:

A:
2008-01-01: 5
2008-01-02: 7
2008-01-03: 4

B:
2008-01-01: 1
2008-01-03: 3

Wenn ich das ganze mit "SELECT name FROM stats ORDER BY name ASC" anspreche, erhalte ich ja dieses Ergebnis mit mehrfacher Ausgabe für jeden Namen:

A:
2008-01-01: 5
2008-01-02: 7
2008-01-03: 4

A:
2008-01-01: 5
2008-01-02: 7
2008-01-03: 4

A:
2008-01-01: 5
2008-01-02: 7
2008-01-03: 4

B:
2008-01-01: 1
2008-01-03: 3

B:
2008-01-01: 1
2008-01-03: 3

Muss ich die DB-Abfrage jetzt mit 'distinct name' oder mit 'GROUP BY name' machen um im Ergebnis keine doppelten Ausgaben zu erhalten?

Wie gesagt, funktionieren tut beides - im Moment. Aber vielleicht gibts irgdenwann den Fall, dass eines von beiden nicht mehr funktioniert. Denn identisch sind die Funktionen ja wohl nicht!?