sql >> Databáze >  >> RDS >> Mysql

Dotaz MySQL – záznamy mezi dneškem a posledními 30 dny

Musíte použít DATE_FORMAT v SELECT klauzule, nikoli WHERE klauzule:

SELECT  DATE_FORMAT(create_date, '%m/%d/%Y')
FROM    mytable
WHERE   create_date BETWEEN CURDATE() - INTERVAL 30 DAY AND CURDATE()

Všimněte si také, že CURDATE() vrátí pouze DATE část data, takže pokud uložíte create_date jako DATETIME s vyplněnou časovou částí tento dotaz nevybere dnešní záznamy.

V tomto případě budete muset použít NOW místo toho:

SELECT  DATE_FORMAT(create_date, '%m/%d/%Y')
FROM    mytable
WHERE   create_date BETWEEN NOW() - INTERVAL 30 DAY AND NOW()


  1. Připojování k Heroku Postgres ze Spring Boot

  2. Chcete-li vložit chybějící data mezi dvě data? SQL

  3. SQL Server chybí index

  4. Generujte náhodná celá čísla bez kolizí