SELECT TRUNC( SYSDATE, 'YYYY' ) FROM DUAL
可以获取 今年的 1月1号
那么, 如果你知道天数, 就是
SELECT TRUNC( SYSDATE, 'YYYY' ) + 今年的第几天 - 1 FROM DUAL
有几周,把每个月的最后一天拼成串传到如下SQL:
select to_char(to_date('20111031','yyyymmdd'),'w') from dual;
每周日期段没找到直接的,可以自己写个函数:
1、获取1号是周几,如周4;
2、则1-4号为第一周,即1号+(7-4)天=4号;
3、循环:4+1=5号——4+7=11号为第二周;
直到:某周加完后的日期,大于该月的最大天数,则取该月最大天数收尾,循环结束;
第二种方法是你建个存日期的表:
date week
……
20110101
20110102
……
里面存N年的日期,然后根据
select to_char(to_date('20111031','yyyymmdd'),'w') from dual; 把week字段update进去;
然后直接根据这张表写SQL就直接获取几周,每周是几号到几号了。。。
月份:select months_between(sysdate,to_date('2012-08-20','yyyy-mm-dd')) from dual;
天数:select ysdate-to_date('2012-08-20','yyyy-mm-dd') from dual;
以上就是关于oracle怎么得到天数对应的日期全部的内容,包括:oracle怎么得到天数对应的日期、如何从oracle中查到每个月中有几周,每周的日期段从几号到几号、Oracle 获得两个日期之间间隔的月份数和天数等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)