Oracle 统计当月每天/每小时/每分钟数据处理量

有一批数据需要完成数据匹配,匹配完成后会在结果表的 MatchDate 字段存储匹配时间。匹配的数据无法在1天内完成,现在需要统计每小时匹配数据量。

SELECT TO_CHAR(TR.MatchDate, 'mm-dd hh24') AS MD, COUNT(*) AS HOUR_TOTAL
  FROM result_table_name TR -- result_table_name 所需查询数据的表名
 WHERE TO_CHAR(TRUNC(TR.MatchDate), 'yyyy-mm') -- TR.MatchDate 是匹配数据完成时间列,解决时间类型不统一,统一使用 TO_CHAR 来进行类型转换
       = (SELECT TO_CHAR(SYSDATE, 'yyyy-mm') FROM DUAL) -- 获取系统时间
 GROUP BY TO_CHAR(TR.MatchDate, 'mm-dd hh24') -- 通过日期中的“月-日 小时”来进行分组操作
 order by MD;

-- 或

SELECT TO_CHAR(TR.MatchDate, 'mm-dd hh24') AS MD, COUNT(*) AS HOUR_TOTAL
  FROM result_table_name TR -- result_table_name 所需查询数据的表名
 GROUP BY TO_CHAR(TR.MatchDate, 'mm-dd hh24') -- 通过日期中的“月-日 小时”来进行分组操作
 order by MD;

每小时查询结果

SELECT TO_CHAR(TR.MATCHDATE, 'mm-dd hh24:mi') AS MD, COUNT(*) AS MINUTE_TOTAL
  FROM result_table_name TR -- result_table_name 所需查询数据的表名
 GROUP BY TO_CHAR(TR.MATCHDATE, 'mm-dd hh24:mi') -- 通过日期中的“月-日 小时:分钟”来进行分组操作
 order by MD;

每分钟查询结果

参考: oracle查询符合当天并查出每个小时中数据的总数量.

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值