如何在 MySQL 中将 DateTime 列与仅日期而非时间进行比较?

mysqlmysqli database

要将 DateTime 列与仅日期进行比较,您需要使用 Date() 方法。以下是语法。下面,您需要在 'yourDateValue' 中输入日期:

select *from yourTableName where Date(yourColumnName)='yourDateValue';

首先我们创建一个表:

mysql> create table DemoTable
(
   ArrivalTime datetime
);
Query OK, 0 rows affected (0.74 sec)

下面是使用 insert 命令在表中插入一些记录的查询:

mysql> insert into DemoTable values('2019-01-31 02:34:56');
Query OK, 1 row affected (0.20 sec)
mysql> insert into DemoTable values('2019-04-09 18:20:58');
Query OK, 1 row affected (0.13 sec)
mysql> insert into DemoTable values('2019-05-11 19:45:23');
Query OK, 1 row affected (0.13 sec)
mysql> insert into DemoTable values('2019-02-03 21:10:02');
Query OK, 1 row affected (0.16 sec)

以下是使用 select 命令显示表中记录的查询:

mysql> select *from DemoTable;

这将产生以下带有日期和时间记录的输出:

+---------------------+
| ArrivalTime         |
+---------------------+
| 2019-01-31 02:34:56 |
| 2019-04-09 18:20:58 |
2019-05-11 19:45:23   |
| 2019-02-03 21:10:02 |
+---------------------+
4 rows in set (0.00 sec)

以下查询仅比较日期而不比较时间。这里,我们比较日期:

mysql> select *from DemoTable where Date(ArrivalTime)='2019-04-09';

这将产生以下输出:

+---------------------+
| ArrivalTime         |
+---------------------+
| 2019-04-09 18:20:58 |
+---------------------+
1 row in set (0.00 sec)

相关文章