mysql: Gruppiere nach ID, bekomme höchste Priorität für jede ID

Ich habe die folgende MySQL-Tabelle namens "pics" mit den folgenden Feldern und Beispieldaten:

id   vehicle_id    filename    priority
1    45            a.jpg       4
2    45            b.jpg       1
3    56            f.jpg       4
4    67            cc.jpg      4
5    45            kt.jpg      3
6    67            gg.jpg      1

Ist es möglich, in einer einzelnen Abfrage eine Zeile für jede vehicle_id zu erhalten und die Zeile hat die höchste Priorität?

Das Ergebnis, das ich suche:

array (
  [0] => array( [id] => '2', [vehicle_id] => '45', [filename] => 'b.jpg',  [priority] => '1' ),
  [1] => array( [id] => '3', [vehicle_id] => '56', [filename] => 'f.jpg',  [priority] => '4' ),
  [2] => array( [id] => '6', [vehicle_id] => '67', [filename] => 'gg.jpg', [priority] => '1' )
);

Wenn dies in einer einzelnen Abfrage nicht möglich ist, was wäre der beste Ansatz?

Vielen Dank

Antworten auf die Frage(6)

Ihre Antwort auf die Frage