表格中有两列
- event_date(值为 09/22/2013)
- event_time(值为晚上 7:11)
现在我想编写一个查询,它应该返回具有 future 或过去 时间和日期的行。
我是这样写的
SELECT *
FROM events e
WHERE CONCAT(e.event_date, ' ', e.event_time) <= DATE_FORMAT(NOW(), '%m/%d/%Y %g:%i %a')
但它没有用,它只是其中一个你永远不知道它们出了什么问题的东西
提前致谢!
最佳答案
SELECT *
FROM Events
WHERE event_date < CURRENT_DATE()
OR (event_date = CURRENT_DATE() AND event_time <= CURRENT_TIME())
这样做的好处是可以使用 event_date
上可能存在的任何索引。
关于mysql - 检查 MySQL 中的日期是否即将到来或过去,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17666159/