2012-04-27 63 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