Mysql
 sql >> Datenbank >  >> RDS >> Mysql

MySQL - Gruppieren nach mit Order by DESC

Da die Tabelle nur diese 3 Felder hat und Sie nach UID filtern, können Sie einfach MAX ohne JOIN verwenden:

SELECT version, MAX(datetime) Maxdatetime
FROM table
WHERE uuid='bla'
GROUP BY version

Wenn die Tabelle jedoch mehr Felder hat oder Sie nicht nach uid filtern - Sie müssen zuerst die MAX-Datumszeit für jede Version abrufen und dann die Zeile auswählen:

SELECT t.uuid, t.version, t.datetime 
FROM table t JOIN (
    SELECT version, MAX(datetime) Maxdatetime
    FROM table
    WHERE uuid='bla'
    GROUP BY version
) r ON t.version = r.version AND t.datetime = r.Maxdatetime
WHERE t.uuid='bla'
ORDER BY t.datetime desc