我有一個oracle數據庫,我需要一個包含所有日期跨度爲2年的表; 例如從01/01/2011
到01/01/2013
。oracle日期序列?
首先,我想到了一個序列,但顯然只支持類型爲號,所以現在我正在尋找一種有效的方式來做到這一點
歡呼騙局
我有一個oracle數據庫,我需要一個包含所有日期跨度爲2年的表; 例如從01/01/2011
到01/01/2013
。oracle日期序列?
首先,我想到了一個序列,但顯然只支持類型爲號,所以現在我正在尋找一種有效的方式來做到這一點
歡呼騙局
如果你想要的是填充塊的連續日期記錄,這很容易做到。以下查詢生成十個日期。您只需調整種子日期以給出起點,並在connect by
子句中輸入level
以適合您的終點,然後將其插入insert
語句。
SQL> select (trunc(sysdate, 'MM')-1) + level
2 from dual
3 connect by level <= 10
4/
(TRUNC(SY
---------
01-JAN-10
02-JAN-10
03-JAN-10
04-JAN-10
05-JAN-10
06-JAN-10
07-JAN-10
08-JAN-10
09-JAN-10
10-JAN-10
10 rows selected.
SQL>
比方說,我們有一個名爲表:基準,與列數據(日期型) 表包含:
21-01-2010
22-01-2010
01-12-2009
06-10-2008
03-07-2007
那麼你可以使用:
SELECT *
FROM datums
WHERE datum
BETWEEN to_date('01/01/2009','mm/dd/yyyy')
AND to_date('12/31/2010','mm/dd/yyyy')
結果:
21-01-2010
22-01-2010
01-12-2009