2015-01-16 135 views
1

我正在寫一個UPDATE陳述來更新表集Column =下個月的最後一天。更新日期至下月甲骨文

我試過類似的東西,但似乎沒有工作。

Update MyTable SET MyColoumn = To_Date(((Month From Current_Timestamp) +1)'-31-2015' , 'MM-DD-YYYY'); 
+3

,如果你使用'提取物(一個月CURRENT_TIMESTAMP)'這可能會奏效,但@下面JustinCave的解決方案是更好,因爲有可能不是下個月的第31天(和在這種情況下,不存在 - 2月只有28天),並且這會導致錯誤'TO_DATE()'。 –

回答

9
UPDATE myTable 
    SET myColumn = last_day(add_months(sysdate, 1)) 

應該工作。 add_months將1個月添加到當前日期。 last_day爲您提供本月的最後一天。

1

另一種方法是:

UPDATE mytable 
    SET mycolumn = TRUNC(ADD_MONTHS(SYSDATE, 2), 'MONTH') - 1;