简体   繁体   English

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

[英]How to calculate Total hours using query in mysql?

I have field named "Time" in my table. 我的表中有一个名为“时间”的字段。 I want to calculate total hours. 我想计算总时数。

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

Output should be 2hr. 输出应为2小时。 How can I achieve this? 我该如何实现? Please help me to solve it. 请帮我解决。

I tried below query but it did not work as expected. 我在下面的查询中尝试了一下,但是没有按预期工作。

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

如果需要两个值之间的最大时间跨度,请尝试:

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

suppose your table have an id as a primary key auto incremental, so you query will be: 假设您的表有一个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;

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM