【发布时间】:2017-05-22 17:31:12
【问题描述】:
我有以下 sql 查询,它为我提供按月、周和日分组的总 h_time。相反,我想要月、周和日的 h_time 中值。如何在 Oracle SQL 中做到这一点?
SELECT DAY,
MEDIAN(H_TIME) AS HANDLE_TIME
FROM(
select
MONTH, WEEK, DAY,
CASE
WHEN C.JOINED IS NOT NULL
THEN (NVL(C.TOTAL_TALK,0) + NVL(C.TOTAL_HOLD,0) + (NVL((C.DATETIME - C.START_DATETIME)*86400,0)) )/86400
ELSE 0 END AS H_TIME
from TABLE1 C
LEFT JOIN TABLE2 S
ON S.ID = C.ID
where c.direct = 'Inbound'
)
where UPPER(ITEM1) like 'SOMETHING%'
GROUP BY
DAY
输出:
DAY HANDLE_TIME
14-APR-17 .00567129629629629629629629629629629629629
15-APR-17 0
17-APR-17 0
17-APR-17 .00422453703703703703703703703703703703703
19-APR-17 .00269675925925925925925925925925925925925
19-APR-17 0
19-APR-17 0
19-APR-17 .00824074074074074074074074074074074074074
【问题讨论】:
-
在第 3 行 @GurwinderSingh 或者你的意思是在子查询中?
-
@GurwinderSingh 错过了复制。抱歉,已更新查询。
-
请提供样本数据和该数据所需的输出。
-
请提供表 TABLE1 和 TABLE2 的示例数据(具有实际值的行),并告诉我们您期望 那个 数据的输出。
-
您确定您的某些“DAY”值不包含您未显示的时间组件(使它们不同)吗?
标签: sql oracle oracle-sqldeveloper median partition