【发布时间】:2015-05-23 07:52:51
【问题描述】:
我的数据库中有一个包含事件的表。事件有开始时间和结束时间。但是当它们被插入数据库时,用户输入的时间将转换为 UTC 时间。所以对我来说,我的时间偏移量是 UTC 时间的 -4 小时,如果我将开始时间输入为晚上 7 点(19:00:00),当添加到数据库时将转换为 23:00:00(UTC)。
问题
我希望用户能够在晚上 7 点及之后选择所有事件直到一天结束,但如果我进行查询:WHERE time > 23:00:00 它只会检索开始时间在晚上 7:00 到晚上 7 点 59 分。晚上 8:00 时,数据库中的 UTC 时间为 00:00:00,小于 23:00:00。
保存开始时间的字段类型为time
我使用 javascript 获取时间偏移和输入,使用 php 获取 mySQL。关于如何使用这些语言或 SQL 解决这个问题的任何想法?
【问题讨论】:
-
您最好将时间作为本地时间存储在服务器上,然后在需要时使用
CONVERT_TZ()将它们转换为UTC。
标签: javascript php mysql sql