Oracle 獲取時間段內的所有周
阿新 • • 發佈:2019-02-05
ORACLE時間操作(獲取周)
ORCLE獲取時間段內的所有周(包括週一日期,週日日期,該年的第幾周)
首先要獲取一段時間內的所有日期,然後再獲取時間段內的每個週一,週日,第幾周。
案例程式碼
例如下面程式碼,下面的2017-03-02為開始日期,2017-05-02為結束日期:
SELECT TRUNC(to_DATE('2017-03-02', 'YYYY-MM-DD') + (ROWNUM - 1) * 7, 'D') + 1 AS 週一,
TRUNC(to_DATE('2017-03-02', 'YYYY-MM-DD') + (ROWNUM - 1) * 7, 'D' ) + 7 AS 週日,
TO_CHAR(to_DATE('2017-03-02', 'YYYY-MM-DD') + (ROWNUM - 1) * 7, 'IW') AS 第幾周
FROM DUAL
CONNECT BY ROWNUM <=
TRUNC(to_DATE('2017-5-02', 'YYYY-MM-DD') -
to_DATE('2017-03-02', 'YYYY-MM-DD')) / 7 + 1