我有以下查询,以获取事件。
SELECT
*
FROM
events_table
WHERE event_date > DATE_SUB(NOW(), INTERVAL 1 DAY)
ORDER BY event_status ASC,
event_date ASC
我要做的就是返回 event_date 为的所有行today
我要去哪里错了?感谢帮助
我有以下查询,以获取事件。
SELECT
*
FROM
events_table
WHERE event_date > DATE_SUB(NOW(), INTERVAL 1 DAY)
ORDER BY event_status ASC,
event_date ASC
我要做的就是返回 event_date 为的所有行today
我要去哪里错了?感谢帮助
在你的 where 子句中怎么样:
WHERE DATE(event_date) = DATE(NOW())
还有另一个不会阻止在 event_date 上使用索引的选项:
WHERE event_date BETWEEN CURDATE() AND DATE_ADD(CURDATE(), INTERVAL 1 DAY)
使用CURDATE()
:
SELECT
*
FROM
events_table
WHERE event_date > CURDATE()
ORDER BY event_status ASC,
event_date ASC
这是假设 event_date 不能在将来...否则您还需要使用该DATE()
功能:
WHERE DATE(event_date) = CURDATE()