Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak wybrać wiersze z najnowszym czasem dla każdej daty w ciągu ostatnich 30 dni od teraz?

Możesz group by data część daty i godziny i uzyskaj maksimum dla każdego dnia.

select max(`datetime`) 
from tablename
where `datetime` >= date(now())-interval '30' day
group by date(`datetime`)

Aby pobrać wszystkie pola z tabeli dla takich wierszy, użyj

select * from tablename where `datetime` in (
select max(`datetime`) 
from tablename
where `datetime` >= date(now())-interval '30' day
group by date(`datetime`)
)


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Policz wielkie litery w String

  2. Opuścił dołączenie MAX(DATE)

  3. Uzyskaj kolejność zależności tabeli w jdbc

  4. Najlepsze sposoby naprawy uszkodzonej tabeli InnoDB w MySQL

  5. Wewnętrzne kroki aktualizacji dołączenia MYSQL