mysql分钟到小时和分钟

Jef*_*osa 5 mysql time decimal

我有一张桌子可以从任务中返回分钟数,我想将其转换为小时和分钟.

我的选择是:

select
m.mat_nome as 'Matéria',
round(
    sum(
        case when Hour(TIMEDIFF(est_horario_inicial, est_horario_final))*60 = 0 
            then Minute(TIMEDIFF(est_horario_inicial, est_horario_final))
            else Hour(TIMEDIFF(est_horario_inicial, est_horario_final))*60
        end
    )/60
 ,2)
as 'tempo' from estudos_realizados e
left join materias m on e.mat_id = m.mat_id; 
Run Code Online (Sandbox Code Playgroud)

所以这是从我的桌子返回100分钟和1.67除以60.我想得到结果1小时40分钟的小时和分钟.

这个有可能?如何将数字除以60并将小数值修改为60?

谢谢!

Dam*_*vic 10

你应该查找FLOOR()函数和简单的数学.你需要类似的东西

CONCAT(FLOOR(minutes/60),'h ',MOD(minutes,60),'m') 
Run Code Online (Sandbox Code Playgroud)


小智 6

CONCAT(FLOOR(minutes/60),':',LPAD(MOD(minutes,60),2,'0'))
Run Code Online (Sandbox Code Playgroud)

Damir Kasipovic 代码的变体:这将 62 分钟转换为“1:02”