Vous devez appliquer DATE_FORMAT
dans le SELECT
clause, pas la WHERE
clause :
SELECT DATE_FORMAT(create_date, '%m/%d/%Y')
FROM mytable
WHERE create_date BETWEEN CURDATE() - INTERVAL 30 DAY AND CURDATE()
Notez également que CURDATE()
renvoie uniquement la DATE
partie de la date, donc si vous stockez create_date
en tant que DATETIME
avec la partie heure remplie, cette requête ne sélectionnera pas les enregistrements d'aujourd'hui.
Dans ce cas, vous devrez utiliser NOW
à la place :
SELECT DATE_FORMAT(create_date, '%m/%d/%Y')
FROM mytable
WHERE create_date BETWEEN NOW() - INTERVAL 30 DAY AND NOW()