MySQL 查询以在添加了间隔天数后获取大于当前日期的日期记录?
我们首先创建一个表 −
mysql> create table DemoTable ( Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, AddDay int, PostDate date ); Query OK, 0 rows affected (2.73 sec)
使用 insert 命令在表中插入一些记录 −
mysql> insert into DemoTable(AddDay,PostDate) values(20,'2019-08-04'); Query OK, 1 row affected (0.11 sec) mysql> insert into DemoTable(AddDay,PostDate) values(7,'2019-08-20'); Query OK, 1 row affected (0.16 sec) mysql> insert into DemoTable(AddDay,PostDate) values(45,'2019-07-01'); Query OK, 1 row affected (0.19 sec)
使用 select 语句显示表中的所有记录 −
mysql> select *from DemoTable;
这将生成以下输出 −
+----+--------+------------+ | Id | AddDay | PostDate | +----+--------+------------+ | 1 | 20 | 2019-08-04 | | 2 | 7 | 2019-08-20 | | 3 | 45 | 2019-07-01 | +----+--------+------------+ 3 rows in set (0.00 sec)
以下是查询以在添加了 AddDay 列中的天数后获取大于当前日期的数据记录 −
mysql> select *from DemoTable where PostDate +interval AddDay day >=curdate();
这将生成以下输出 −
+----+--------+------------+ | Id | AddDay | PostDate | +----+--------+------------+ | 1 | 20 | 2019-08-04 | | 2 | 7 | 2019-08-20 | +----+--------+------------+ 2 rows in set (0.00 sec)
广告