【发布时间】:2013-08-31 11:58:00
【问题描述】:
我有这张表叫events。此表在单独的列中包含 event_date 和 event_time。我目前正在处理一个页面,它将显示所有即将发生的事件。如何从events 表中查询日期和时间仍将到来的记录?我的意思是,如何使用 MySQL 计算或编写查询,特别是 where 子句?我正在使用 PHP 和 CodeIgniter。
感谢所有愿意回答的人。
编辑:我使用了 Gordon Linoff 的建议:
where event_date >= now() or
(event_date = date(now()) and event_time > time(now()))
但我修改为
where event_date>date(now()) or
(event_date=date(now()) and event_time>time(now()))
因为 Gordon's 没有完全返回我所期望的结果(日期为当天但时间尚未到来的事件不会显示为即将发生的事件)。无论如何,感谢戈登和其他回答的人。我还不是 MySQL 日期查询方面的专家,所以你们帮了我一个大忙。
【问题讨论】:
-
您想要
WHERE子句还是ORDER BY功能? -
即将举行的活动意味着与今天相比,它的日期在未来。因此它将类似于
WHERE date_column > NOW() -
您使用什么数据类型来存储日期和时间部分?
-
或者您可能需要从现在开始的所有事件,而不是过去的事件?
-
如果是同一天但时间还没有到@N.B.怎么办?
标签: php mysql codeigniter date