2013-04-26 52 views
3

我需要在pl/sql中編寫一個腳本,並獲取上一期間的內容。會計系統中的期間定義爲YYYYMM,即本月當前期間爲201304,前一個月期間爲201303.Oracle PL/SQL上一年和月

對於我的某個函數,期間過去了,我需要獲得前一期間。 因此,例如,如果傳遞週期爲201301,則查詢需要返回只有201212

回答

11

SQL:

SELECT TO_CHAR(ADD_MONTHS(TO_DATE(current_period, 'YYYYMM'), -1), 'YYYYMM') 
FROM dual; 

PL/SQL:

previous_period := TO_CHAR(ADD_MONTHS(TO_DATE(current_period, 'YYYYMM'), -1), 'YYYYMM'); 
+0

非常感謝你這個作品! – Pinu 2013-04-26 16:00:18