目前我正在使用此查询,这会在几分钟内为我提供持续时间。
我的部分查询
Select
E.xyme
From
(SELECT Timee as xyme from
(select round(avg(tableT.DURATIONMIN),2) as Timee
FROM ownerName.tableT tableT
where tableT.FLAG = 0 )
)E
输出
Xyme
----
125.58
输出寻找
Xyme
----
2 hours, 5 minutes, 35 seconds
部分解决方案 我知道我们可以使用类似下面的内容,但我无法实现。
floor((sysdate-Timee)*24)
|| ' HOURS ' ||
mod(floor((sysdate-Timee)*24*60),60)
|| ' MINUTES ' ||
mod(floor((sysdate-Timee)*24*60*60),60)
|| ' SECS ' Duration
答案 0 :(得分:7)
您可以使用numtodsinterval()
function将分钟的数值转换为间隔类型,然后使用extract()
中的元素转换为
select extract (hour from numtodsinterval(timee, 'MINUTE')) || ' hours, '
|| extract (minute from numtodsinterval(timee, 'MINUTE')) || ' minutes, '
|| extract (second from numtodsinterval(timee, 'MINUTE')) || ' seconds' as xyme
from (select 125.58 as timee from dual);
XYME
----------------------------------------
2 hours, 5 minutes, 34.8 seconds
您可以根据需要round
或trunc
秒值;看起来你想要样品中的round
。