2012-04-27 305 views

回答

5

試試這個:

SELECT TRUNC(SYSDATE - (LEVEL * 7), 'IW') TheDate 
     FROM dual 
    CONNECT BY LEVEL <= 7 
+0

謝謝!我知道會有一個簡單和更好的方法來做到這一點。 – Cimplicity 2012-04-27 21:11:16

0

目前我使用此代碼來生成列表。我很好奇,如果有更好的解決方案。但是想爲任何可能正在尋找的人提供這個解決方案。

SELECT DISTINCT 
    TRUNC(sysdate-(rownum+1),'iw') IW_week, 
    TO_CHAR(TRUNC(sysdate-(rownum+1),'iw'),'iw') AS week_num 
FROM dual 
    CONNECT BY level <= 49 
ORDER BY TRUNC(sysdate-(rownum+1),'iw'); 

電流輸出:

enter image description here