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

tzm*_*447 76 mysql datetime utc

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

Jusst要清楚 - 我正在寻找一个纯粹的mysql查询

rek*_*o_t 191

SELECT * FROM tbl WHERE datetime < NOW() - INTERVAL 1 WEEK
Run Code Online (Sandbox Code Playgroud)

如果您的表在不同时区存储日期时间而不是NOW()返回,则可以使用UTC_TIMESTAMP()UTC来获取时间戳.


Saj*_*azy 15

SELECT * FROM table WHERE DATEDIFF(NOW(),colname) > 7;
Run Code Online (Sandbox Code Playgroud)

  • 虽然此代码可能会回答这个问题,但提供有关此代码为何和/或如何回答问题的其他背景可提高其长期价值. (4认同)
  • 也许这更短,但它如何能够使用索引。 (4认同)

Mic*_*sov 8

SELECT SUBDATE('2008-01-02', 7);
Run Code Online (Sandbox Code Playgroud)

要么

SELECT SUBDATE(now(), INTERVAL 1 week);
Run Code Online (Sandbox Code Playgroud)

结果:

2007-12-26