Mysql
 sql >> база данни >  >> RDS >> Mysql

MySQL заявка - Записи между днес и последните 30 дни

Трябва да приложите DATE_FORMAT в SELECT клауза, а не WHERE клауза:

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

Също така имайте предвид, че CURDATE() връща само DATE част от датата, така че ако съхранявате create_date като DATETIME с попълнена част от времето, тази заявка няма да избере днешните записи.

В този случай ще трябва да използвате NOW вместо това:

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


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да направя замяна на регулярен израз в MySQL?

  2. Как да стартирам SQL скрипт в MySQL?

  3. Инсталиране и конфигуриране на MySQL на Ubuntu 20.04

  4. генерира дни от период от време

  5. Mysql select recursive get all child с множество нива