MySQL 如何选择当前时间戳内与现在时间相差10分钟的所有记录
使用以下语法可以选择当前时间戳内与当前时间相差10分钟的所有记录 –
SELECT *FROM yourTableName
WHERE yourColumnName > = DATE_SUB(NOW(),INTERVAL 10 MINUTE);
为了理解上述语法,让我们创建一个数据表。创建表的查询语句如下 –
mysql> create table users
-> (
-> Id int NOT NULL AUTO_INCREMENT,
-> UserName varchar(20),
-> UserLastseen datetime,
-> PRIMARY KEY(Id)
-> );
Query OK, 0 rows affected (0.91 sec)
使用插入命令在表格中插入一些记录。查询语句如下 –
mysql> insert into users(UserName,UserLastseen) values('Larry','2019-01-15 02−45−00');
Query OK, 1 row affected (0.15 sec)
mysql> insert into users(UserName,UserLastseen) values('Sam',now());
Query OK, 1 row affected (0.25 sec)
mysql> insert into users(UserName,UserLastseen) values('Mike','2019-01-15 02−30−00');
Query OK, 1 row affected (0.15 sec)
mysql> insert into users(UserName,UserLastseen) values('Bob','2019-01-15 15−02−00');
Query OK, 1 row affected (0.23 sec)
mysql> insert into users(UserName,UserLastseen) values('David','2019-01-15 14−55−00');
Query OK, 1 row affected (0.15 sec)
使用select语句从表中显示所有记录。查询语句如下 –
mysql> select *from users;
以下是输出结果 –
+----+----------+---------------------+
| Id | UserName | UserLastseen |
+----+----------+---------------------+
| 1 | Larry | 2019-01-15 02−45−00 |
| 2 | Sam | 2019-01-15 15−01−52 |
| 3 | Mike | 2019-01-15 02−30−00 |
| 4 | Bob | 2019-01-15 15−02−00 |
| 5 | David | 2019-01-15 14−55−00 |
+----+----------+---------------------+
5 rows in set (0.00 sec)
下面是选择当前时间戳内与现在时间相差10分钟的所有记录的查询语句 –
mysql> select *from users
-> where UserLastseen> = date_sub(now(),interval 10 minute);
以下是输出结果 –
+----+----------+---------------------+
| Id | UserName | UserLastseen |
+----+----------+---------------------+
| 2 | Sam | 2019-01-15 15−01−52 |
| 4 | Bob | 2019-01-15 15−02−00 |
| 5 | David | 2019-01-15 14−55−00 |
+----+----------+---------------------+
3 rows in set (0.00 sec)
阅读更多:MySQL 教程