2012-03-08 68 views
3

我试图产生ranklist,在我所总结的许多持续时间拿到总时间,当我在MySQL我试图SUM(TIMEDIFF(finishTime,“开始时间”))时间值注意到增加两个持续时间就好像他们是两个正常的数字一样,即如果我加上00:00:50和00:00:50,我得到00:01:00作为答案。聚合函数总和在MySQL

TO_SECOND在MySQL 5.1中不可用。

回答

2
SUM(TIMEDIFF(TIME_TO_SEC(finishtime) - TIME_TO_SEC(starttime))); 

使用TIME_TO_SEC到时间转换成秒数学运算

+0

谢谢你,让它与time_to_sec工作 – 2012-03-08 13:26:23

+0

@ChakradarRaju欢迎。 – 2012-03-08 13:27:45

+1

@Chakradar Raju:那么你可以将帖子标记为已回答;) – 2012-03-08 13:29:14

1

在你用日期时间时间戳的工作时,我发现我可以使用下面的方法获得更可靠的结果:

SUM(UNIX_TIMESTAMP(finishtime) - UNIX_TIMESTAMP(starttime)) /3600