用 MySQL 抓取最近一小時新增的行?
你可以使用 MySQL 中的 date-sub() 和 now() 函式來獲取最近一小時新增的行。
語法
語法如下 −
select *from yourTableName where yourDateTimeColumnName <=date_sub(now(),interval 1 hour);
上面的查詢給出了最近一小時新增的結果。為了理解上述概念,我們首先建立一個表。建立表的查詢如下 −
mysql> create table LastHourRecords -> ( -> Id int, -> Name varchar(100), -> Login datetime -> ); Query OK, 0 rows affected (0.67 sec)
使用 insert 命令以 datetime 的形式插入記錄。插入記錄的查詢如下 −
mysql> insert into LastHourRecords values(1,'John',' 2018-12-19 10:00:00'); Query OK, 1 row affected (0.17 sec) mysql> insert into LastHourRecords values(2,'Carol','2018-12-19 10:10:00'); Query OK, 1 row affected (0.15 sec) mysql> insert into LastHourRecords values(3,'Sam','2018-12-19 10:05:00'); Query OK, 1 row affected (0.13 sec) mysql> insert into LastHourRecords values(4,'Mike','2018-12-18 12:10:00'); Query OK, 1 row affected (0.10 sec)
使用 select 語句從表中顯示所有記錄。查詢如下 −
mysql> select *from LastHourRecords;
輸出
+------+-------+---------------------+ | Id | Name | Login | +------+-------+---------------------+ | 1 | John | 2018-12-19 10:00:00 | | 2 | Carol | 2018-12-19 10:10:00 | | 3 | Sam | 2018-12-19 10:05:00 | | 4 | Mike | 2018-12-18 12:10:00 | +------+-------+---------------------+ 4 rows in set (0.00 sec)
讓我們看看獲取過去一小時新增行的查詢 −
mysql> select *from LastHourRecords -> where Login <=Date_sub(now(),interval 1 hour);
輸出
+------+-------+---------------------+ | Id | Name | Login | +------+-------+---------------------+ | 1 | John | 2018-12-19 10:00:00 | | 2 | Carol | 2018-12-19 10:10:00 | | 3 | Sam | 2018-12-19 10:05:00 | +------+-------+---------------------+ 3 rows in set (0.00 sec)
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP