テーブルにはこれらの3つのフィールドしかないため、uidでフィルタリングしているため、JOINなしでMAXを使用できます。
SELECT version, MAX(datetime) Maxdatetime
FROM table
WHERE uuid='bla'
GROUP BY version
ただし、テーブルにさらに多くのフィールドがある場合、またはuid
でフィルタリングしていない場合 -最初に各バージョンの最大日時を取得してから、次の行を選択する必要があります:
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