如何在SQL中将分钟转换为小时和秒?

Mow*_*gli 0 sql datetime date oracle11g

目前我正在使用此查询,它以分钟为单位给出了持续时间.

我的查询的一部分

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
Run Code Online (Sandbox Code Playgroud)

输出将是

Xyme
----
125.58
Run Code Online (Sandbox Code Playgroud)

输出寻找

Xyme
----
2 hours, 5 minutes, 35 seconds
Run Code Online (Sandbox Code Playgroud)

部分解决方案 我知道我们可以使用类似下面的内容,但我无法实现.

 floor((sysdate-Timee)*24)
  || ' HOURS ' ||
  mod(floor((sysdate-Timee)*24*60),60)
  || ' MINUTES ' ||
  mod(floor((sysdate-Timee)*24*60*60),60)
  || ' SECS ' Duration
Run Code Online (Sandbox Code Playgroud)

Ale*_*ole 7

您可以使用该numtodsinterval()函数将分钟的数值转换为间隔类型,然后使用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         
Run Code Online (Sandbox Code Playgroud)

你可以roundtrunc秒值为宜; 看起来像你想要round的样品.