gpt4 book ai didi

php - 仅选择字段中包含 future 日期的记录

转载 作者:行者123 更新时间:2023-11-29 12:26:54 24 4
gpt4 key购买 nike

我只想选择 future 的事件

event    s_date    start_time  end_time
event6 2015-01-30 19:45:00 21:45:00
event5 2015-01-29 20:45:00 21:45:00
event4 2015-01-29 19:45:00 21:45:00
event3 2015-01-28 00:30:00 03:00:00
event2 2015-01-27 09:00:00 11:00:00
event1 2015-01-26 19:45:00 21:45:00

我尝试过,但没有得到正确的结果

SELECT s_date, DATE_FORMAT(s_date, '%W %D %M') AS date, CONCAT(s_date, ' ', end_time) AS dt
FROM schedule
GROUP BY s_date
HAVING dt >= NOW()

最佳答案

您可以使用TIMESTAMP() 连接日期和时间,然后将其与当前时间进行比较。

例如,要获取尚未开始的事件列表:

SELECT 
event, start_time, end_time
FROM
events
WHERE
TIMESTAMP(s_date, start_time) > NOW()
;

请注意,这假设 start_time 和 end_time 的类型为 TIME。您应该考虑完全消除 s_date 字段,并将 start_timeend_time 存储为 DATETIME 字段。

请记住不要为此使用 TIMESTAMP 字段。虽然它们看起来很相似,但 TIMESTAMP 会在记录更改时更新,而 DATETIME 仅存储您显式指定的值。

我不太确定您要使用 GROUP BY 子句做什么。如果您使用此功能,它只会为您提供每个日期的一个事件。它甚至不会为您提供该日期的第一个事件,因为您没有明确设置订单。

如果您能澄清您对该部分的意图,我很乐意尝试改进此答案。

关于php - 仅选择字段中包含 future 日期的记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28182614/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com