在 MySQL 查询中使用日期 UNIX_TIMESTAMP 来以不同格式获取特定日期之后的记录?

mysqlmysqli database更新于 2023/11/5 21:09:00

为此,您可以使用 STR_TO_DATE(),因为我们有以下格式的日期记录:21/11/2019。

首先我们创建一个表 −

mysql> create table DemoTable1808
     (
     AdmissionDate varchar(20)
     );
Query OK, 0 rows affected (0.00 sec)

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

mysql> insert into DemoTable1808 values('21/11/2019');
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1808 values('01/01/2018');
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1808 values('26/09/2017');
Query OK, 1 row affected (0.00 sec)

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

mysql> select * from DemoTable1808;

这将产生以下输出 −

+---------------+
| AdmissionDate |
+---------------+
| 21/11/2019    |
| 01/01/2018    |
| 26/09/2017    |
+---------------+
3 rows in set (0.00 sec)

这是获取特定日期之后的记录的查询 −

mysql> select * from DemoTable1808
   where str_to_date(AdmissionDate,'%d/%m/%Y') > '2018-12-31';

这将产生以下输出 −

+---------------+
| AdmissionDate |
+---------------+
| 21/11/2019    |
+---------------+
1 row in set (0.00 sec)

相关文章