ORACLE 獲取某一日期所在周的周一


可使用

1.select trunc(日期,'d')+1 from dual; --意周日為一周起始日期
2.select trunc(日期,'iw') from dual;--意周日為一周結束日期

 

select trunc(sysdate,'d')+1 from dual;

select trunc(sysdate,'iw') from dual;

 

 

select trunc(to_date('2011-03-13','YYYY-MM-DD'),'d')+1 from dual;

select trunc(to_date('2011-03-13','YYYY-MM-DD'),'iw') from dual;

 

select to_date('2011-03-13','YYYY-MM-DD') from dual;

 

兩者周划分不同

獲取本年一月一至今所有周

SELECT REPLACE(TO_CHAR(TRUNC(TO_DATE('2018-01-01', 'YYYY-MM-DD') + (ROWNUM - 1) * 7,'D') + 1,'YYYY-MM-DD'),'-','') AS START_TIME,
REPLACE(TO_CHAR(TRUNC(TO_DATE('2018-01-01', 'YYYY-MM-DD') + (ROWNUM - 1) * 7,'D') + 7,'YYYY-MM-DD'),'-','') AS END_TIME
FROM DUAL
CONNECT BY ROWNUM <=TRUNC(SYSDATE - TO_DATE('2018-01-01', 'YYYY-MM-DD')) / 7 + 1

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM