oracle时间平均,Oracle SQL的平均时间

要计算平均时间,您将使用:

SELECT

job_nm,

TO_CHAR(

TO_DATE(

AVG(

TO_NUMBER(

TO_CHAR(

TO_DATE(

TO_CHAR(Start_Dt,'HH24:MI:SS'),

'HH24:MI:SS'),

'sssss')

)

),

'sssss'),

'hh24:mi:ss')

FROM batch_table

WHERE Start_Dt >= trunc(sysdate-10)

GROUP BY job_nm;

这里还有另一个选择,也许不那么复杂:

SELECT

job_nm,

FLOOR(24 * AVG(Start_Dt- TRUNC(Start_Dt)))

|| ':'

|| FLOOR(MOD(24 * AVG(Start_Dt - TRUNC(Start_Dt)),1) * 60)

|| ':'

|| FLOOR(MOD(MOD(24 * AVG(Start_Dt- TRUNC(Start_Dt)),1) * 60,1) * 60)

FROM batch_table

WHERE Start_Dt >= trunc(sysdate-10)

GROUP BY job_nm;

为了以防万一,如果你想计算一个平均日期,你可以把日期转换成儒略日期格式,计算平均值,然后转换回日期,比如:

SELECT

job_nm,

TO_DATE(

ROUND(

AVG(

TO_NUMBER(TO_CHAR(Start_Dt, 'J'))

)

),

'J')

FROM batch_table

WHERE Start_Dt >= trunc(sysdate-10)

GROUP BY job_nm;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值