MySQL 选择 * 并查找有当前日期的记录
对于当前日期,使用 CURDATE()。再使用 STR_TO_DATE() 格式化日期,并使用以下语法与当前日期进行比较 -
语法
select *from yourTableName where str_to_date(yourColumnName,'yourFormatSpecifier')=curdate();
假设当前日期是 27/10/2019。
让我们先创建一个表 -
mysql> create table DemoTable -> ( -> JoiningDate varchar(40) -> ); Query OK, 0 rows affected (0.79 sec)
使用插入命令在表中插入一些记录 -
mysql> insert into DemoTable values('27/10/2017'); Query OK, 1 row affected (0.14 sec) mysql> insert into DemoTable values('27/10/2018'); Query OK, 1 row affected (0.78 sec) mysql> insert into DemoTable values('27/10/2019'); Query OK, 1 row affected (0.14 sec) mysql> insert into DemoTable values('27/10/2020'); Query OK, 1 row affected (0.11 sec)
使用 select 语句显示表中的所有记录 -
mysql> select *from DemoTable;
这将产生以下输出 -
+-------------+ | JoiningDate | +-------------+ | 27/10/2017 | | 27/10/2018 | | 27/10/2019 | | 27/10/2020 | +-------------+ 4 rows in set (0.00 sec)
以下是用来比较并查找有当前日期的记录的查询 -
mysql> select *from DemoTable where str_to_date(JoiningDate,'%d/%m/%Y')=curdate();
这将产生以下输出 -
+-------------+ | JoiningDate | +-------------+ | 27/10/2019 | +-------------+ 1 row in set (0.00 sec)
广告