oracle不同范围分组,Oracle按不同时间分组统计的sql-Oracle

本文介绍了如何使用Oracle SQL进行按年、月、季度和周的分组统计,展示了一组示例数据及其对应的SQL查询语句,帮助理解时间维度的数据聚合方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Oracle按不同时间分组统计的sql

如下表table1:

日期(exportDate) 数量(amount)

-------------- -----------

14-2月 -08 20

10-3月 -08 2

14-4月 -08 6

14-6月 -08 75

24-10月-09 23

14-11月-09 45

04-8月 -10 5

04-9月 -10 44

04-10月-10 88

注意:为了显示更直观,如下查询已皆按相应分组排序

1.按年份分组

select to_char(exportDate,'yyyy'),sum(amount) from table1 group by to_char(exportDate,'yyyy');

年份 数量

-----------------------------

2009 68

2010 137

2008 103

2.按月份分组

select to_char(exportDate,'yyyy-mm'),sum(amount) from table1 group by to_char(exportDate,'yyyy-mm')

order by to_char(exportDate,'yyyy-mm');

月份 数量

-----------------------------

2008-02 20

2008-03 2

2008-04 6

2008-06 75

2009-10 23

2009-11 45

2010-08 5

2010-09 44

2010-10 88

3.按季度分组

select to_char(exportDate,'yyyy-Q'),sum(amount) from table1 group by to_char(exportDate,'yyyy-Q')

order by to_char(exportDate,'yyyy-Q');

季度 数量

------------------------------

2008-1 22

2008-2 81

2009-4 68

2010-3 49

2010-4 88

4.按周分组

select to_char(exportDate,'yyyy-IW'),sum(amount) from table1 group by to_char(exportDate,'yyyy-IW')

order by to_char(exportDate,'yyyy-IW');

周 数量

------------------------------

2008-07 20

2008-11 2

2008-16 6

2008-24 75

2009-43 23

2009-46 45

2010-31 5

2010-35 44

2010-40 88

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值