MySQL-秒到秒的时间给出相同的结果,不考虑组
使用下面的查询以获得每个月的时间差之和。基本上我有开始时间,停止时间。我取的差等于运行时间,然后我想把一个月的所有运行时间加起来,也就是说在一月份我们有x小时y分钟z秒的运行时间 然而,当对这些值求和时,我会遇到奇怪的结果。将一月和二月的秒数相加时。我得到了不同的结果。然后,当将秒转换为时间戳时,它们解析为相同的时间值 问题1 %JAN%的结果--> %FEB%的结果--> 问题2 除数据量显著减少的12月外,每个月的结果相同MySQL-秒到秒的时间给出相同的结果,不考虑组,mysql,sql,database,datetime,time,Mysql,Sql,Database,Datetime,Time,使用下面的查询以获得每个月的时间差之和。基本上我有开始时间,停止时间。我取的差等于运行时间,然后我想把一个月的所有运行时间加起来,也就是说在一月份我们有x小时y分钟z秒的运行时间 然而,当对这些值求和时,我会遇到奇怪的结果。将一月和二月的秒数相加时。我得到了不同的结果。然后,当将秒转换为时间戳时,它们解析为相同的时间值 问题1 %JAN%的结果--> %FEB%的结果--> 问题2 除数据量显著减少的12月外,每个月的结果相同 下面是我正在使用的当前查询。由于最大时间对象值的限制,无法访问长运行
下面是我正在使用的当前查询。由于最大时间对象值的限制,无法访问长运行时间代码。 我选择的解决方法是简单地显示所花费的时间,作为时间戳的一部分
select monthname(STR_TO_DATE(STR_DATE, "%d/%b/%Y")) as month,
sum(TIME_TO_SEC(diff))/3600 as hours
from
(SELECT
CASE WHEN RIGHT(stp_time,3)="DUR"
THEN
TIMEDIFF(LEFT(stp_time,8), '00:00:00')
ELSE
TIMEDIFF(
STR_TO_DATE(CONCAT(stp_date," ",LEFT(stp_time,8)), '%d/%b/%Y %H:%i:%s'),
STR_TO_DATE(CONCAT(str_date," ",LEFT(str_time,8)), '%d/%b/%Y %H:%i:%s')
)
END AS diff, ext_umid, str_date
FROM vms1_asrun) as a
group by month
我猜你达到了秒到秒的时间限制,它只能显示小时、分钟和秒-因此,如果你的总和大于24小时,你总是会得到这个结果!运行时的总和很可能在1000小时内。有别的解决办法吗?我想我可以自己转换一下:你现在能自己回答你的问题吗?如果是,请这样做,并请给出详细解释!被另一个任务缠住了,来袭!
select monthname(STR_TO_DATE(STR_DATE, "%d/%b/%Y")) as month,
SEC_TO_TIME(sum(TIME_TO_SEC(diff)))
from
(SELECT
CASE WHEN RIGHT(stp_time,3)="DUR"
THEN
TIMEDIFF(LEFT(stp_time,8), '00:00:00')
ELSE
TIMEDIFF(
STR_TO_DATE(CONCAT(stp_date," ",LEFT(stp_time,8)), '%d/%b/%Y %H:%i:%s'),
STR_TO_DATE(CONCAT(str_date," ",LEFT(str_time,8)), '%d/%b/%Y %H:%i:%s')
)
END AS diff, ext_umid, str_date
FROM vms1_asrun) as a
group by month
select monthname(STR_TO_DATE(STR_DATE, "%d/%b/%Y")) as month,
sum(TIME_TO_SEC(diff))/3600 as hours
from
(SELECT
CASE WHEN RIGHT(stp_time,3)="DUR"
THEN
TIMEDIFF(LEFT(stp_time,8), '00:00:00')
ELSE
TIMEDIFF(
STR_TO_DATE(CONCAT(stp_date," ",LEFT(stp_time,8)), '%d/%b/%Y %H:%i:%s'),
STR_TO_DATE(CONCAT(str_date," ",LEFT(str_time,8)), '%d/%b/%Y %H:%i:%s')
)
END AS diff, ext_umid, str_date
FROM vms1_asrun) as a
group by month