我在使用具有两个不同日期的 TIMEDIFF 时遇到问题。以下查询“应该”返回 00:04:51
mysql> SELECT TIMEDIFF(TIME('2013-07-21 00:04:50'),TIME('2013-07-20 23:59:59'));
+-------------------------------------------------------------------+
|TIMEDIFF(TIME('2013-07-21 00:04:50'),TIME('2013-07-20 23:59:59')) |
+-------------------------------------------------------------------+
| -23:55:09 |
+-------------------------------------------------------------------+
1 row in set (0.00 sec)
有什么建议吗?哪种方法最简单? 谢谢
最佳答案
如果没有日期信息,则必须假设这些值是在同一天。保留日期信息,它将按预期工作*:
SELECT TIMEDIFF('2013-07-21 00:04:50','2013-07-20 23:59:59');
*前提是答案小于 TIME 最大值 838:59:59
关于MySQL TIMEDIFF 负值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18148836/