2

我正在为我的消防部门建立一个社区网站,他们想展示即将发生的事件,但我不想展示已经过去的事件,所以这就是我所拥有的(我正在使用 dreamweaver 顺便说一句)。

带表的数据库(表 = events1532):

-id (int)
-event_start (datetime) YEAR-MO-DA HR:MI:SE
-event_end (datetime) YEAR-MO-DA HR:MI:SE
-event_location (text)
-event_desc (varchar)

我需要从首页尚未通过的最早事件中获取事件开始日期,但我需要这种格式 = 03/05/2013 上午 12:00。

有什么想法吗?

4

1 回答 1

2

您可以使用 CONCAT 和 DATE_FORMAT 函数来根据需要操作结果。

SELECT CONCAT(DATE_FORMAT(event_start, '%d/%m/%Y'), " at ", DATE_FORMAT(event_start, '%h:%m %p')), event_location, event_desc
FROM events1532
WHERE event_start > NOW()
ORDER BY event_start ASC
LIMIT 1;

MySQL 日期格式选项

NOW() 函数返回当前时间的日期时间。您可以通过简单地执行以下操作在 MySQL 查询中对此进行测试:

SELECT NOW();

其余的基本上是按升序对结果进行排序(意味着大于 NOW() 的最快日期将位于结果的顶部),并将结果限制为 1。您当然可以将其限制为更多,具体取决于如何许多你想退货。

于 2012-11-12T04:25:23.673 回答