MySQL 查询具有两个布尔条件,可根据小时提取日期?

mysqlmysqli database更新于 2025/5/25 22:04:17

首先我们创建一个表 −

mysql> create table DemoTable
   -> (
   -> AdmissionDate datetime
   -> );
Query OK, 0 rows affected (0.75 sec)

使用 insert 命令在表中插入一些记录 −

mysql> insert into DemoTable values('2019-01-10 10:45:10');
Query OK, 1 row affected (0.30 sec)

mysql> insert into DemoTable values('2019-02-12 20:50:00');
Query OK, 1 row affected (0.14 sec)

mysql> insert into DemoTable values('2019-02-12 16:10:19');
Query OK, 1 row affected (0.15 sec)

使用 select 语句显示表中的所有记录 −

mysql> select *from DemoTable;

输出

这将产生以下输出 −

+---------------------+
| AdmissionDate       |
+---------------------+
| 2019-01-10 10:45:10 |
| 2019-02-12 20:50:00 |
| 2019-02-12 16:10:19 |
+---------------------+
3 rows in set (0.00 sec)

以下查询包含两个布尔条件,比分别查询每个条件花费的时间更长 −

mysql> select *from DemoTable where EXTRACT(HOUR from AdmissionDate) not between 8 and 10;

输出

这将产生以下输出 −

+---------------------+
| AdmissionDate       |
+---------------------+
| 2019-02-12 20:50:00 |
| 2019-02-12 16:10:19 |
+---------------------+
2 rows in set (0.00 sec)

相关文章


有用资源