是否有任何oracle sql函数可以帮助显示时间,因为目前我正在汇总一列的时间并以小时为单位计算。
时间892.26(小时)
需求
时间(同列)892小时26分钟
请建议可以做些什么。
也许您应该重新考虑数据模型。如果像893.26
一样将时间存储为数字,并将其视为892 hours and 26 minutes
,则每次计算都会很复杂。
您最好只将值存储为分钟,如53,546
(分钟),它来自简单的计算893 x 60 + 26
。然后,您可以简单地通过+
或-
在值之间进行加法或减法运算,并可以通过简单的计算将其表示为小时和分钟:
hours = trunc(value / 60)
minutes = mod(value, 60)
这可以在您的SQL:中完成
select trunc(value / 60) || ' hrs ' || mod(value, 60) || 'min'
from ...
如果您的最小刻度是秒,则应将每个值存储在秒中。这可以使事情比你现在使用的方式简单得多。