是否有任何 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 ...
如果您的最小刻度是秒,您应该以秒为单位存储每个值。这可以使事情比您现在使用的方式简单得多。