使用开始日期和结束日期计算日期范围中的天数的 MySQL 查询


要计算日期范围内的天数,你需要使用 DATEDIFF() 查找日期之间的差值。

让我们首先创建一个表

mysql> create table DemoTable730 (
   StartDate date,
   EndDate date
);
Query OK, 0 rows affected (0.45 sec)

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

mysql> insert into DemoTable730 values('2019-01-21','2019-07-21');
Query OK, 1 row affected (0.14 sec)
mysql> insert into DemoTable730 values('2018-10-11','2018-12-31');
Query OK, 1 row affected (0.46 sec)
mysql> insert into DemoTable730 values('2016-01-01','2016-12-31');
Query OK, 1 row affected (0.14 sec)

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

mysql> select *from DemoTable730;

这将产生以下输出 -

+------------+------------+
| StartDate  | EndDate    |
+------------+------------+
| 2019-01-21 | 2019-07-21 |
| 2018-10-11 | 2018-12-31 |
| 2016-01-01 | 2016-12-31 |
+------------+------------+
3 rows in set (0.00 sec)

以下是如何计算日期范围内的天数的查询

mysql> select ABS(DATEDIFF(StartDate,EndDate)) AS Days from DemoTable730;

这将产生以下输出 -

+------+
| Days |
+------+
| 181  |
| 81   |
| 365  |
+------+
3 rows in set (0.00 sec)

更新于: 22-Aug-2019

741 次查看

开启你的 职业生涯

完成课程,获得认证

开始行动
广告