如何在mysql中使用查询计算总小时数?

时间:2015-12-30 13:10:45

标签: php mysql

我的表中有一个名为“Time”的字段。我想计算总小时数。

Time
3:00:00
4:00:00
5:00:00

输出应为2小时。 我怎样才能做到这一点?请帮我解决一下。

我尝试了以下查询,但它没有按预期工作。

SELECT  SEC_TO_TIME( SUM( TIME_TO_SEC( `timeSpent` ) ) ) AS timeSum  
FROM YourTableName

2 个答案:

答案 0 :(得分:2)

如果您需要值之间的最大时间跨度,请尝试使用:

SELECT MAX(timeSpent) - MIN(timeSpent) FROM YourTableName

答案 1 :(得分:0)

假设您的表具有id作为主键自动增量,因此您将查询:

SELECT FLOOR(sum( abs( SEC_TO_TIME(TIME_TO_SEC(t1.`timeSpent`))  -  SEC_TO_TIME(TIME_TO_SEC(t2.`timeSpent`)) )/10000)) as total 
FROM YourTableName t1
inner join YourTableName t2 
on t1.id = t2.id + 1;