J'ai la table mysql suivante appelée « photos », avec les champs suivants et les données de l'échantillon:mysql: groupe par ID, obtenir la plus haute priorité pour chaque ID
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
Est-il possible, dans une seule requête, pour obtenir une ligne pour chaque vehicle_id, et la ligne soit la plus haute priorité?
Le résultat que je cherche:
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')
);
Si pas possible dans une seule requête, quelle serait la meilleure approche?
Merci!
Que se passe-t-il si un véhicule_id a 2 lignes liées pour le plus haut. Voulez-vous les deux en arrière? –
Non, alors je serais par défaut au plus tôt posté. Une seule ligne par véhicule_id. – briang
@briang: Comment savez-vous quel est le plus ancien affiché? Celui avec l'ID le plus bas? –