枚举法计算全年周内星期几的次数

with x0 as

(select to_date('2015-01-01','yyyy-mm-dd') as 年初 from dual),

x1 as

(select 年初,add_months(年初,12) as 下年年 from x0),

x2 as

(select 年初,下年初,下年初-年初 as 天数 from x1),

x3 as/*生成列表*/

(select 年初+(level-1) as 日期 from x2 connect by level<天数),

x4 as/*对数据进行转换*/

(select 日期,to_char(日期,'DY') as 星期 from x3)

/*汇总天数*/

select 星期,count(*) as 天数 from x4 group by 星期;

步骤分解:

1.取得当年年度信息

2.计算一年有多少天

3.生成日期列表

4.转换为对应的星期标识

5.汇总

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值