MySQL - Group by et Order by DESC
table: uuid, version, datetime
version n'est pas unique, mais l'idée est de récupérer uniquement les lignes avec la dernière datetime pour un uuid
SELECT * FROM table WHERE uuid='bla' GROUP BY version ORDER BY datetime desc
... bien sûr obtient datetime asc résultats -- est-il un moyen de "précommande" le groupe par aux desc, de sorte que seule la dernière version est extraite?
Vous devez vous connecter pour publier un commentaire.
depuis la table ne dispose que de 3 champ, et vous êtes le filtrage par uid vous pouvez simplement utiliser le MAX sans la JOINTURE:
Toutefois, si la table n'avait plus de champs, ou vous n'êtes pas de filtrage par
uid
- vous devez d'abord obtenir le MAX datetime pour chaque version sélectionnez la ligne:Il ya une meilleure façon pour moi, vous pouvez ajouter un
desc
de groupe par:pourquoi il fonctionne, c'est parce que mon id est généré et donc toujours le dernier id désigne la dernière datetime
datetime
a été inséré dans l'ordre (triés)