날짜 시간이 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