我有一个列,它是用户在一项任务上花费的总分钟数的总和。此列是通过以下方式获得的:
(sum(cast(LTRIM(DATEDIFF(SECOND, 0, TotalTimeOtherTasks))as int)) over (partition by headLogs.operatorID)/60) as TotalTimeOtherTasks
返回315。totaltimeothertasks是该任务的一列时间,例如00:30:23 01:05:55
我想用hh:mm格式做这个节目,315=05:15。
我试过为类似的问题做其他的回答,比如;使用单独的公式并将它们串联起来,但会出现错误,例如“05:15”一旦得到答案就无法转换为int,或者“':'未被识别为公式的一部分”。如果我转换它,我就不能使用sum()。所以我认为这可能是它自己的问题。
2条答案
按热度按时间ui7jx7zq1#
一种方法是分别计算分和秒,然后把它们连在一起
请注意,我删除了铸造,这在这里似乎是不必要的:在大多数数据库中,
datediff()
已返回整数。sczxawaw2#
虽然答案已经被接受了,但我将发布我的解决方案,它在mysql中工作。此处引用:将分钟数转换为hh:mm
假设下表结构
给予