Rumah  >  Artikel  >  pangkalan data  >  Bagaimanakah kita boleh mengabaikan nilai negatif yang dikembalikan oleh fungsi MySQL DATEDIFF()?

Bagaimanakah kita boleh mengabaikan nilai negatif yang dikembalikan oleh fungsi MySQL DATEDIFF()?

PHPz
PHPzke hadapan
2023-09-23 21:33:111657semak imbas

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

Seperti yang kita sedia maklum, fungsi DATEDIFF() digunakan untuk mendapatkan perbezaan hari antara dua tarikh. Oleh itu, ia juga berkemungkinan mengembalikan nilai negatif.

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)

Pertanyaan di atas akan mengembalikan nilai dalam jadual "berbeza". Sekarang jika seseorang ingin mendapatkan perbezaan antara OrderDate dan workingDate maka output akan menjadi negatif seperti yang ditunjukkan di bawah -

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

Tetapi kita boleh mengabaikan nilai negatif ini menggunakan fungsi MySQL ABS() seperti berikut -

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)

Atas ialah kandungan terperinci Bagaimanakah kita boleh mengabaikan nilai negatif yang dikembalikan oleh fungsi MySQL DATEDIFF()?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam
Artikel sebelumnya:Apakah maksud /* dalam MySQL?Artikel seterusnya:Apakah maksud /* dalam MySQL?