J'ai une base de données qui stocke la date pour chaque entrée avec le format DateTime. Je n'ai besoin que de récupérer des résultats supérieurs à hier. Je dis hier parce que j'ai besoin des résultats de la journée en cours et de l'avant. P>
Actuellement, j'ai ce qui suit. p>
Cela ne donne aucun résultat même si je sais qu'il y a des événements. Toute aide serait grandement appréciée. P> $ YEST = mktime (0, 0, 0, date ("m"), date ("d") - 1, date ("y"); code>
$ yest_date = date ('n-j-o', $ yest); code> p>
Sélectionnez * à partir de Tbl_name où date_format (Event_Date, \ "% c-% d-% y \")> '". $ YEST_DATE."' CODE> P>
6 Réponses :
Sélectionnez * à partir de tbl_name où event_date> date_sub (maintenant ((), intervalle 1 jour) code> p> p>
Cela ne fonctionnera pas car il ne supprime pas la partie temporelle. Hier est très probablement à partir de 00:00:00 code>, pas au maintenant () - 1 code>
SELECT * FROM TBL_NAME WHERE event_date >= CURDATE()
WHERE event_date > date(now()) - 1
Select * from tbl_name WHERE event_date > DATE_SUB(curdate(), INTERVAL 1 DAY) This should have it start from the beginning of yesterday rather than 24hours back from the time the query is run.If you have this run in a cron you should probably verify the timezone of the database vs the server so that you don't run it for two days back intending to run at 12:01 but actually running at 11:01 due to variance.
Qu'est-ce que celui-ci est de choisir des valeurs à partir de la première minute aujourd'hui jusqu'à la dernière minute aujourd'hui.
SELECT * FROM tbl_name WHERE field_date > now()- interval 1 day;