oracle中按时间统计次数的语句

按天统计

SELECT TO_CHAR(T.create_time, 'YYYY-MM-DD') TIME, COUNT(*) COUNT
  FROM test T
 GROUP BY TO_CHAR(T.create_time, 'YYYY-MM-DD')
 ORDER BY TO_CHAR(T.create_time, 'YYYY-MM-DD') ASC NULLS LAST

按周统计

SELECT TO_CHAR(T.create_time, 'YYYY') YEAR,
       TO_CHAR(T.create_time, 'IW') TIME,
       COUNT(*) COUNT
  FROM test T
 GROUP BY TO_CHAR(T.create_time, 'IW'), TO_CHAR(T.trade_time, 'YYYY')
 ORDER BY TO_CHAR(T.create_time, 'YYYY'),
          TO_CHAR(T.create_time, 'IW') ASC NULLS LAST

按月统计

SELECT TO_CHAR(T.create_time, 'YYYY-MM') TIME, COUNT(*) COUNT
  FROM test T
 GROUP BY TO_CHAR(T.create_time, 'YYYY-MM')
 ORDER BY TO_CHAR(T.create_time, 'YYYY-MM') ASC NULLS LAST

按季度统计

SELECT TO_CHAR(T.create_time, 'YYYY') YEAR,
       TO_CHAR(T.create_time, 'Q') TIME,
       COUNT(*) COUNT
  FROM test T
 GROUP BY TO_CHAR(T.create_time, 'Q'), TO_CHAR(T.create_time, 'YYYY')
 ORDER BY TO_CHAR(T.create_time, 'YYYY'),
          TO_CHAR(T.create_time, 'Q') ASC NULLS LAST

按年统计

SELECT TO_CHAR(T.create_time, 'YYYY') YEAR, COUNT(*) COUNT
  FROM test T
 GROUP BY TO_CHAR(T.create_time, 'YYYY')
 ORDER BY TO_CHAR(T.create_time, 'YYYY') ASC NULLS LAST

注:create_time为表TEST里的创建时间字段,时间类型
以上代码可直接在数据库里运行

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值