[mysql] MYSQL 쿼리 / 1 주 전보다 오래된 날짜 (UTC의 모든 날짜 시간)

날짜 시간이 1 주일 이전 인 모든 레코드를 반환하도록 mysql db를 쿼리하는 방법은 무엇입니까? datetime 테이블은 모든 것을 UTC로 저장하므로 그 자체로 비교해야합니다.

분명히 말하면 순수한 mysql 쿼리를 찾고 있습니다.



답변

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

테이블이 NOW()반환 되는 것과 다른 시간대에 날짜 시간을 저장 하는 경우 UTC_TIMESTAMP()대신 사용 하여 UTC로 타임 스탬프를 가져올 수 있습니다 .


답변

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


답변

SELECT SUBDATE('2008-01-02', 7);

또는

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

결과:

2007-12-26


답변