Matthias Jütte: MAX-Wert einer Spalte mit restlichen Daten der Zeile auslesen

Beitrag lesen

Hallo zusammen!

Ich würde gerne aus der Tabelle


| a | b | c |

| 2 | x | L |
| 3 | x | D |
| 5 | y | A |
| 2 | y | E |

den jeweils höchsten a-Wert einer jeden Gruppe von b-Datensätzen mit dem dazugehörigen c-Element auslesen. Rauskommen soll also

3,D
5,A.

Ich versuche das mit der Abfrage "SELECT MAX(a), c FROM tabelle GROUP BY b". Die liefert als Ergebnis aber

3,L
5,A.

Es wird also offensichtlich immer der erste in c gefundene Wert und der höchste a-Wert einer jeden Gruppe ausgelesen.

Kann mir jemand sagen, wie ich meine Abfrage ändern muß, um das gewünschte Ergebnis zu erlangen? Mir ist klar, daß ich erst den höchsten Wert der a-Spalte in eine MySQL-Variable auslesen kann, um dann nach dem dazugehörigen Wert der c-Spalte zu suchen (und das in eine Schleife packen kann), aber da das Problem in einem etwas komplizierteren als hier dargestellten Datengefüge auftritt, würde ich vorab gerne wissen, ob es auch eine Abfrage gibt, die mir direkt das gewünschte Ergebis liefert.

Gruß

Matthias

--
ss:| zu:| ls:[ fo:| de:] va:) ch:? sh:) n4:( rl:( br:> js:| ie:% fl:) mo:}
http://www.makaio.de/quotations