Вам необходимо применить 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()