Du kan group by
datumdelen av datetime och få maxvärdet för varje dag.
select max(`datetime`)
from tablename
where `datetime` >= date(now())-interval '30' day
group by date(`datetime`)
För att hämta alla fält från tabellen för sådana rader, använd
select * from tablename where `datetime` in (
select max(`datetime`)
from tablename
where `datetime` >= date(now())-interval '30' day
group by date(`datetime`)
)