返回所有時間戳早於 1 週記錄的 MySQL 查詢
要獲取早於 1 周的日期,可以使用以下語法 −
select *from yourTableName where yourColumnName < now() - interval 1 week;
為了理解上述概念,我們建立一個表。建立表的查詢如下 −
mysql> create table DatesOfOneWeek −> ( −> ArrivalTime datetime −> ); Query OK, 0 rows affected (0.87 sec)
在表中插入一些記錄 −
mysql> insert into DatesOfOneWeek values(date_add(now(),interval 2 week)); Query OK, 1 row affected (0.11 sec) mysql> insert into DatesOfOneWeek values('2018-11-04'); Query OK, 1 row affected (0.14 sec) mysql> insert into DatesOfOneWeek values('2018-11-25'); Query OK, 1 row affected (0.11 sec) mysql> insert into DatesOfOneWeek values(date_add(now(),interval -1 week)); Query OK, 1 row affected (0.14 sec) mysql> insert into DatesOfOneWeek values(date_add(now(),interval 1 week)); Query OK, 1 row affected (0.11 sec)
我們檢查上述插入的記錄是否存在。顯示錶中所有記錄的查詢如下 −
mysql> select *from DatesOfOneWeek;
輸出如下 −
+---------------------+ | ArrivalTime | +---------------------+ | 2018-12-20 18:11:02 | | 2018-11-04 00:00:00 | | 2018-11-25 00:00:00 | | 2018-11-29 18:11:40 | | 2018-12-13 18:11:46 | +---------------------+ 5 rows in set (0.00 sec)
以下是獲取過去日期(即 1 周前的所有日期)的 MySQL 查詢 −
mysql> select *from DatesOfOneWeek where ArrivalTime < now() - interval 1 week;
輸出如下 −
+---------------------+ | ArrivalTime | +---------------------+ | 2018-11-04 00:00:00 | | 2018-11-25 00:00:00 | | 2018-11-29 18:11:40 | +---------------------+ 3 rows in set (0.00 sec)
Advertisement