4
timediff 함수가 예상대로 작동하지 않습니다. 다음 예제에서는 1 년 동안의 차이를 초 단위로 계산하려고합니다.timediff에 대한 예기치 않은 결과
mysql>SELECT 366*24*60*60 AS expected;
+----------+
| expected |
+----------+
| 31622400 |
+----------+
1 row in set (0.00 sec)
mysql>SELECT ABS(UNIX_TIMESTAMP('2000:01:01 00:00:00') - UNIX_TIMESTAMP('2001:01:01 00:00:00'));
+------------------------------------------------------------------------------------+
| ABS(UNIX_TIMESTAMP('2000:01:01 00:00:00') - UNIX_TIMESTAMP('2001:01:01 00:00:00')) |
+------------------------------------------------------------------------------------+
| 31622400 |
+------------------------------------------------------------------------------------+
1 row in set (0.00 sec)
mysql>SELECT TIME_TO_SEC(TIMEDIFF('2000:01:01 00:00:00', '2001:01:01 00:00:00'));
+---------------------------------------------------------------------+
| TIME_TO_SEC(TIMEDIFF('2000:01:01 00:00:00', '2001:01:01 00:00:00')) |
+---------------------------------------------------------------------+
| -3020399 |
+---------------------------------------------------------------------+
1 row in set, 1 warning (0.00 sec)
Warning (Code 1292): Truncated incorrect time value: '-8784:00:00'
비슷한 문제가있었습니다. TIMESTAMPDIFF보다는 TIMEDIFF가 내 문제를 해결했습니다! – Selah