mysql:通过sql创建的列的计数和

mysql:通过sql创建的列的计数和,mysql,Mysql,我显示用户1每天的第一个和最后一个日志 alo我计算第一个日志和最后一个日志之间的时间差 所以我想要的是计算时间差的总和,比如 总和(总计) 这是我要跑的 SELECT id,device,userid,time, MIN(time) as Min, MAX(time) as Max, TIMEDIFF(MAX(time), MIN(time)) as total FROM records WHERE userid='1' GROUP BY DATE(time) 结果 所以我想变得像 总和=

我显示用户1每天的第一个和最后一个日志

alo我计算第一个日志和最后一个日志之间的时间差

所以我想要的是计算时间差的总和,比如

总和(总计)

这是我要跑的

SELECT id,device,userid,time, MIN(time) as Min, MAX(time) as Max, TIMEDIFF(MAX(time), MIN(time)) as total
FROM records WHERE userid='1' GROUP BY DATE(time) 
结果

所以我想变得像
总和=25:31:47
  • 您可以在中使用当前查询结果并计算总和
  • 此外,您需要首先使用函数将时间转换为秒,然后在执行
    求和
    之后,您需要使用函数将时间重新转换回时间
  • 请尝试以下操作:

    SELECT SEC_TO_TIME( SUM( TIME_TO_SEC(derived_t.total) ) ) AS total_time_diff
    FROM 
    (
     SELECT TIMEDIFF(MAX(time), MIN(time)) as total
     FROM records 
     WHERE userid='1' 
     GROUP BY DATE(time) 
    ) AS derived_t 
    

    我得到这个号码248206我怎么能看到小时:分钟:seconds@Gloytoshtyqo检查更新的答案。现在应该对你有用了