将 DATE 字符串与 MySQL DATETIME 域中的字符串比较?


借助 MySQL 中的 DATE() 函数,可以比较 DATE 字符串与 DATETIME 域中的字符串。句法如下 −

select *from yourTableName where DATE(yourColumnName) = ’anyDateString’;

为了理解上述句法,让我们创建一个表并在表中设置一些 datetime 值。查询以创建表 −

mysql> create table DateTimeDemo
   −> (
   −> ArrivalTime datetime
   −> );
Query OK, 0 rows affected (0.61 sec)

让我们借助 insert 命令在表中插入一些记录。以下是插入记录的查询 −

mysql> insert into DateTimeDemo values(now());
Query OK, 1 row affected (0.11 sec)

mysql> insert into DateTimeDemo values(date_add(now(),interval 2 year));
Query OK, 1 row affected (0.47 sec)

mysql> insert into DateTimeDemo values(date_add(now(),interval 1 year));
Query OK, 1 row affected (0.19 sec)

mysql> insert into DateTimeDemo values(date_add(now(),interval 4 year));
Query OK, 1 row affected (0.13 sec)

mysql> insert into DateTimeDemo values(date_add(now(),interval -2 year));
Query OK, 1 row affected (0.17 sec)

mysql> insert into DateTimeDemo values(date_add(now(),interval -1 year));
Query OK, 1 row affected (0.17 sec)

借助 select 语句显示所有记录。查询以显示表中的所有记录 −

mysql> select *from DateTimeDemo;

以下是输出 −

+---------------------+
| ArrivalTime         |
+---------------------+
| 2018-12-06 10:12:45 |
| 2020-12-06 10:13:10 |
| 2019-12-06 10:13:21 |
| 2022-12-06 10:13:27 |
| 2016-12-06 10:13:42 |
| 2017-12-06 10:13:50 |
+---------------------+
6 rows in set (0.00 sec)

现在,实现上面我们讨论的比较字符串与日期时间域的句法。查询如下 −

mysql> select *from DateTimeDemo where date(ArrivalTime) = '2022-12-06';

以下是输出 −

+---------------------+
| ArrivalTime         |
+---------------------+
| 2022-12-06 10:13:27 |
+---------------------+
1 row in set (0.14 sec)

更新于:30-Jul-2019

1K+ 浏览量

开启您的 职业生涯

通过完成课程获得认证

开始
广告
© . All rights reserved.