一个日期转换为第几周,但是要 (**周日-周六**)
使用 IW 方式转换是周一到周日
SELECT TO_CHAR(to_date(‘20200513’,'yyyymmdd'),'IW') from dual;
现在我想 (**周日-周六**)该怎么去修改呢?
一个日期转换为第几周,但是要 (**周日-周六**)
使用 IW 方式转换是周一到周日
SELECT TO_CHAR(to_date(‘20200513’,'yyyymmdd'),'IW') from dual;
现在我想 (**周日-周六**)该怎么去修改呢?
其实计算周数的方法不变,只要将日期偏移1位,得到偏移后的值再计算第几周。
以20200105和20200112为例子,请看下面的结果:
SELECT '2020-01-05','周一~周日算法的周数',TO_CHAR(to_date('20200105','yyyymmdd'),'IW') week from dual
union all
SELECT '2020-01-12','周一~周日算法的周数',TO_CHAR(to_date('20200112','yyyymmdd'),'IW') week from dual
union all
SELECT '2020-01-05','周六~周日算法的周数',TO_CHAR(to_date('20200105','yyyymmdd')+1,'IW') week from dual
union all
SELECT '2020-01-12','周六~周日算法的周数',TO_CHAR(to_date('20200112','yyyymmdd')+1,'IW') week from dual
'2020-01-05' '周一~周日算法的周数' WEEK
1 2020-01-05 周一~周日算法的周数 01
2 2020-01-12 周一~周日算法的周数 02
3 2020-01-05 周六~周日算法的周数 02
4 2020-01-12 周六~周日算法的周数 03
更多问题可以关注我,或加我QQ/VX:316187205
O(∩_∩)O~