Anda dapat group by
bagian tanggal dari datetime dan dapatkan maksimum untuk setiap hari.
select max(`datetime`)
from tablename
where `datetime` >= date(now())-interval '30' day
group by date(`datetime`)
Untuk mendapatkan semua bidang dari tabel untuk baris tersebut, gunakan
select * from tablename where `datetime` in (
select max(`datetime`)
from tablename
where `datetime` >= date(now())-interval '30' day
group by date(`datetime`)
)