平均符合条件的Oracle
问题描述:
我在从Oracle数据库中的后续方式中的数据:平均符合条件的Oracle
check HR Serie Name
14:00:31 13:59:19 6120 A
14:10:31 13:59:21 6120 A
14:00:31 13:57:19 6120 A
14:04:01 14:02:00 6120 B
14:06:01 14:02:14 6120 B
14:04:01 14:04:00 6120 B
14:04:01 14:02:00 7100 A
14:08:01 14:03:00 7100 A
14:04:01 14:04:00 7100 A
我要计算的列“人力资源”的平均每个系列和名称(两者),但如果只有列检查的值是相同的。
其结果将是:
check AVG(HR) Serie Name
14:00:31 13:58:19 6120 A
14:00:31 14:03:00 6120 B
14:04:01 14:03:00 7100 A
这里是我的代码:
SELECT
TO_CHAR(TRUNC(SysDate) + (AVG(TO_NUMBER(TO_CHAR(TO_DATE(TO_CHAR(HR, 'HH24:MI:SS'), 'HH24:MI:SS'), 'SSSSS'))/60))/24/60, 'hh24:mi:ss'), Serie,Name
from table
group by Serie, name
的问题,我估计即使值列检查不同的是平均
答
在包括check
GROUP BY
子句并添加一个HAVING
子句,该子句将检查重复项:
SELECT check,
TO_CHAR(TRUNC(SYSDATE) + AVG(HR - TRUNC(HR)), 'HH24:MI:SS')
AS "AVG(HR)",
serie,
name
GROUP BY check, serie, name
HAVING COUNT(*) > 1
+0
请问您可以查看我最后一个问题:/ –
答
感谢你的答案,但有可能已识别的重复,因为每一个系列的名字我有4个结果,并在最后我想有结果:
check HR Serie Name
14:00:31 13:58:19 6120 A
14:12:31 14:03:00 6120 B
14:10:31 13:59:21 6120 A (duplicate)
14:04:01 14:03:00 6120 B (duplicate)
并具有相同后,结果,但重复?而@MTO我没有不明白为什么你添加count(*)> 1如果添加它,有什么区别?
所以,你说你想让计算也通过'check'进行分组? – JohnHC