將 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.