0

我有一个事件在我的数据库上每小时运行一次。它调用一个过程,从我的照片表中删除超过一天的行。这是查询:

DELETE FROM Photos WHERE created_at < (NOW() - INTERVAL 1 DAY);

然而,今天早上我注意到我正在测试的行比它应该被删除的时间早了 5 个多小时。我住在休斯顿,所以我在中央时间。照片应该在中央上午 11:23 删除,所以我猜这是时区问题。如果是如何在日期上添加时区,如果不是,可能是什么问题?

4

1 回答 1

1

如果您的分贝不在您所在的同一时区,则可能是时区问题。

是否必须每小时而不是每天清理数据。

您可能会从使用日期部分功能中获得更多乐趣。这样你就完全摆脱了时间戳

所以

Delete from photos where created_at < ((date(now()) - INTERVAL 1 DAY );
于 2015-09-15T17:32:08.980 回答