首页 >数据库 >mysql教程 >我们如何忽略 MySQL DATEDIFF() 函数返回的负值?

我们如何忽略 MySQL DATEDIFF() 函数返回的负值?

PHPz
PHPz转载
2023-09-23 21:33:111706浏览

我们如何忽略 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 DATEDIFF() 函数返回的负值?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文转载于:tutorialspoint.com。如有侵权,请联系admin@php.cn删除