将TIMEDIFF转换为小时加分钟

时间:2013-08-26 13:59:27

标签: php mysql minute

time1: 2013-08-26 16:33:00  
time2: 2013-08-26 15:10:00

$query="UPDATE `FlightSchedule` 
SET delay = MINUTE(TIMEDIFF(time1, time2)) 
WHERE `flightNum_arr`='".$flightNum_arr."';";

它将值23保存为延迟。相反,正确的答案应该是83分钟。如何获得它?

2 个答案:

答案 0 :(得分:4)

我认为你在寻找:

$query="UPDATE `FlightSchedule` 
SET delay = CEIL((UNIX_TIMESTAMP(time1) - UNIX_TIMESTAMP(time2))/60)
WHERE `flightNum_arr`='".$flightNum_arr."';";

或者,有TIME_TO_SEC函数 - 并且,因为它在几秒内提供结果,所以你也需要将其除以60。

答案 1 :(得分:4)

返回1 hour 23 min。你必须得到一小时。

以下代码返回4980秒。而你必须将60分为几分钟。

您可以使用TIME_TO_SEC

TIME_TO_SEC(TIMEDIFF(time1, time2)) / 60