我的数据库中有一个存储事件的表。事件有开始时间和结束时间。但是,当将它们插入数据库时,用户输入的时间将转换为UTC时间。所以对我来说,我的时间偏移是-4小时,如果我输入开始时间为下午7点(19:00:00),当添加到数据库时转换为23:00 ( UTC )。
问题
我希望用户能够在晚上7点和之后选择所有事件,直到一天结束,但是如果我执行查询:WHERE time > 23:00:00,它只会检索开始时间在晚上7:00到7:59之间的事件。在晚上8:00,UTC在数据库中的时间是00:00:00,比23:00:00少。
存储开始时间的字段类型是time。
我使用javascript获取时间偏移量和输入,并为mySQL使用php。对于如何使用这些语言或SQL来解决这个问题,有什么想法吗?
发布于 2015-03-20 00:54:10
当您传入本地时间时,可以将其包装在此转换函数中,以将其转换为UTC时间。这是一个mysql函数,所以所有的信息转换都可以发生在服务器上。
https://stackoverflow.com/questions/29157483
复制相似问题