MySQL MySQL DATEDIFF()函数返回的负值可以被忽略吗?

MySQL MySQL DATEDIFF()函数返回的负值可以被忽略吗?

如我们所知,DATEDIFF()函数用于计算两个日期之间相差的天数。因此,有可能会返回负值。

mysql> select * from differ;
+------------+-------------+
| OrderDate  | WorkingDate |
+------------+-------------+
| 2017-10-22 | 2017-10-29  |
| 2017-10-25 | 2017-10-30  |
| 2017-10-25 | 2017-11-30  |
+------------+-------------+
3 rows in set (0.00 sec)

以上查询将返回表’differ’的值。现在,如果有人想获取OrderDate和WorkingDate之间的差异,则如下所示输出将为负数。

mysql> Select DATEDIFF(OrderDate, WorkingDate)AS 'DIFFERENCE IN DAYS' from differ;
+--------------------+
| DIFFERENCE IN DAYS |
+--------------------+
|                 -7 |
|                 -5 |
|                -36 |
+--------------------+
3 rows in set (0.00 sec)

但是我们可以使用MySQL ABS()函数来忽略这些负值,如下所示。

mysql> Select ABS(DATEDIFF(OrderDate, WorkingDate))AS 'DIFFERENCE IN DAYS' from differ;
+--------------------+
| DIFFERENCE IN DAYS |
+--------------------+
|                  7 |
|                  5 |
|                 36 |
+--------------------+
3 rows in set (0.00 sec)

阅读更多:MySQL 教程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程