4

我需要在上一期的 pl/sql 中编写一个脚本。会计系统中的期间定义为 YYYYMM,即本月当前期间为 201304,上个月期间为 201303。

对于我的一个功能,一个时期过去了,我需要得到上一个时期。因此,例如,如果传递的时间段是 201301,那么查询需要返回 201212

4

1 回答 1

12

仅限 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');
于 2013-04-26T15:58:31.080 回答