Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

เกิดอะไรขึ้นถ้าผลลัพธ์ของ TIMEDIFF() ใน MySQL เกินช่วงค่าของฟิลด์ TIME

ช่วงค่าของฟิลด์ TIME ใน MySQL คือ ' -838:59:59 ' ถึง ' 838:59:59 ' หากผลลัพธ์ของฟังก์ชัน TIMEDIFF() เกินช่วงนี้ MySQL จะคืนค่า ' -838:59:59 ' หรือ ' 838:59:59 ' ขึ้นอยู่กับค่าของอาร์กิวเมนต์

ตัวอย่าง

mysql> SELECT TIMEDIFF('2017-09-01 03:05:45','2017-10-22 03:05:45') AS 'Out of Range TIME Difference';
+------------------------------+
| Out of Range TIME Difference |
+------------------------------+
| -838:59:59                   |
+------------------------------+
1 row in set, 1 warning (0.00 sec)

mysql> SELECT TIMEDIFF('2017-10-22 04:05:45','2017-09-01 03:05:45') AS 'Out of Range TIME Difference';
+------------------------------+
| Out of Range TIME Difference |
+------------------------------+
| 838:59:59                    |
+------------------------------+
1 row in set, 1 warning (0.01 sec)

คำสั่งด้านบนแสดงว่าเมื่อความต่างรวมเกินช่วง MySQL จะคืนค่าขีดจำกัดสูงสุดหรือต่ำสุดของช่วงฟิลด์ TIME