首先 - 我是一个总菜鸟,所以我甚至不知道我是否称它为正确的事。
这当然也会影响我在搜索时获得的结果。到目前为止,我还没有找到我要找的东西。
除此之外,我的第一语言不是英语......
但是这里有:
我有一个使用mySQL的预订日历。显然,php日期函数存在问题,并且在服务器上修补了一些内容。这样就不会显示任何预订。
我将其缩小到mySQL中存储日期的时间戳:
旧版本的时间是格林尼治标准时间23:00 新版本的格林尼治标准时间00:00为时间
通过从数据库中存储为开始日期和结束日期的数字手动减去82800,我能够进行预订。但是有很多预订,我一直在努力找到一个解决方案,我可以运行SQL查询来更新所有预订。
I would need to test if the date ends in 23:00 GMT
If true, then subtract 82800
And go to the next post in the table
或至少在该领域的某些事情。也许甚至有一种标准的方法来解决这个问题......
由于我对此完全陌生,请随意指出正确搜索的内容或其他地方的解决方案链接。
我通过phpMyAdmin访问数据库。
答案 0 :(得分:1)
假设您的列处于正确的日期时间格式,您可以在单个查询中执行此操作。 (但一定要先备份。)
UPDATE your_table
SET booking_time = DATE_SUB(booking_time, INTERVAL 23 HOUR)
WHERE booking_time LIKE '%23:00:00'
如果它在,例如varchar,你可能想写PHP,这需要更长的时间: