我正在寻找一种方法来显示我即将发生的事件,而不是显示任何过去的事件的日期。
MySQL 表:
ID | Title | Date | Time
1 title1 2013-10-5 12:00
2 title2 2013-10-10 12:00
3 title3 2013-10-25 01:00
4 title4 2013-10-31 11:30
我希望它像这样显示:
title2 2013-10-10
title3 2013-10-24
title4 2013-10-31
不显示任何已过去的事件。
任何帮助将不胜感激!谢谢。
在不更改当前结构的情况下,您可以使用CURDATE()
和CURTIME()
SELECT
id, title, date, time
FROM
titles
WHERE
date >= CURDATE() AND time >= CURTIME()
阅读 MySQL 日期和时间函数
首先,我建议您将日期和时间一起存储在DATETIME
字段中。然后,您可以使用:
SELECT title, DATE(`datetime`) AS `date`
FROM table
WHERE `datetime` >= NOW()
(请参阅日期和时间函数)