MYSQL запрос / даты старше 1 недели назад (все даты в UTC) - PullRequest
75 голосов
/ 30 августа 2010

Как мне запросить mysql db, чтобы вернуть все записи с датой и временем старше 1 недели назад.Обратите внимание, что таблица datetime хранит все в UTC, и я должен сравнить это в этом самом ...

Просто, чтобы быть ясным - я ищу чистый запрос mysql

Ответы [ 3 ]

186 голосов
/ 30 августа 2010
SELECT * FROM tbl WHERE datetime < NOW() - INTERVAL 1 WEEK

Если ваша таблица хранит даты и время в другом часовом поясе, чем то, что возвращает NOW(), вы можете использовать UTC_TIMESTAMP() вместо этого, чтобы получить метку времени в UTC.

14 голосов
/ 06 октября 2015
SELECT * FROM table WHERE DATEDIFF(NOW(),colname) > 7;
6 голосов
/ 30 августа 2010
SELECT SUBDATE('2008-01-02', 7);

OR

SELECT SUBDATE(now(), INTERVAL 1 week);

Результат:

2007-12-26

...