MYSQL查询/日期早于1周前(UTC中的所有日期时间)


88

如何查询mysql数据库以返回日期时间早于1周前的所有记录。请注意,日期时间表将所有内容存储在UTC中,我应该对其进行比较。

只是要清楚-我正在寻找一个纯MySQL查询。

Answers:


214
SELECT * FROM tbl WHERE datetime < NOW() - INTERVAL 1 WEEK

如果表中存储的日期时间与NOW()返回的时区不同,则可以改用UTC_TIMESTAMP()UTC来获取时间戳。


18
SELECT * FROM table WHERE DATEDIFF(NOW(),colname) > 7;

5
尽管此代码可以回答问题,但提供有关此代码为何和/或如何回答问题的其他上下文,可以提高其长期价值。
2015年

这个比较短,我应该用这个吗?
moeiscool

3
也许它更短一些,但是它将如何使用索引。
swdev

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.