我想正是明年寫一個存儲過程來打印月份的最後一天添加1年的SYSDATE
我得到這個年最後日期,但我想30/8/2014
我已經試過以下內容:
IF LAST_DAY(add_months(SYSDATE, 12)-1)
但它沒有給我任何輸出。
我想正是明年寫一個存儲過程來打印月份的最後一天添加1年的SYSDATE
我得到這個年最後日期,但我想30/8/2014
我已經試過以下內容:
IF LAST_DAY(add_months(SYSDATE, 12)-1)
但它沒有給我任何輸出。
爲什麼使用-1?以下將起作用:
select last_day(add_months(sysdate, 12)) from dual
如果您在SQL * Plus中運行此操作並且未啓用打印,則可能沒有輸出。嘗試:
set serveroutput on
如果你的要求是2014年8月30日使用以下
select last_day(add_months(sysdate, 12))-1 from dual
如果要求你可以使用Ben的回答這個月的最後一天
只是順便說一句,在使用'SELECT ... INTO'這樣只是要求一個'ORA-01422:精確獲取比rows'的請求數量更多的回報。把它放在一個遊標中並取一次。 – ninesided
@ninesided,如果'repid'是唯一的,則不行。 –
@JeffreyKemp同意了,現在可能不是問題,但是我們並不確定,但沒有人知道它會如何改變賽道。我只是想強調,這種代碼往往會導致錯誤,如果可能,最好避免,恕我直言。 – ninesided