對作為 VARCHAR 值插入到表中的日期執行 MySQL SELECT


我們首先建立一個表 -

mysql> create table DemoTable
(
   DueDate varchar(100)
);
Query OK, 0 rows affected (0.50 sec)

使用 insert 命令在表中插入一些記錄 -

mysql> insert into DemoTable values('21/10/2018');
Query OK, 1 row affected (0.22 sec)
mysql> insert into DemoTable values('18/08/2019');
Query OK, 1 row affected (0.10 sec)
mysql> insert into DemoTable values('01/12/2012');
Query OK, 1 row affected (0.18 sec)
mysql> insert into DemoTable values('31/01/2016');
Query OK, 1 row affected (0.19 sec)

使用 select 語句從表中顯示所有記錄 -

mysql> select *from DemoTable;

這將生成以下輸出 -

+------------+
| DueDate    |
+------------+
| 21/10/2018 |
| 18/08/2019 |
| 01/12/2012 |
| 31/01/2016 |
+------------+
4 rows in set (0.00 sec)

以下是針對上表中包含的日期(作為 VARCHAR)執行 SELECT 的查詢。在這裡,我們正在獲取日期 2010-01-31 之後的全部日期記錄 -

mysql> select *from DemoTable where str_to_date(DueDate,'%d/%m/%Y') > '2010-01-31';

這將生成以下輸出 -

+------------+
| DueDate    |
+------------+
| 21/10/2018 |
| 18/08/2019 |
| 01/12/2012 |
| 31/01/2016 |
+------------+
4 rows in set (0.00 sec)

更新於: 2019 年 9 月 26 日

68 次瀏覽

開啟你的 職業生涯

完成課程,獲取證書

開始使用
廣告
© . All rights reserved.