你的思路有点不对oracle中时间是可以直接加减的,如果你想加上一数得今年同年的年月,可以用add_months()SQL> select add_months(sysdate,12) from dual;ADD_MONTHS(SYSDATE,12)--------------明年
----------------------
2005-10-9 14:24:24SQL> select add_months(sysdate,-12) from dual;ADD_MONTHS(SYSDATE,-12))--------------去年
-----------------------
2003-10-9 14:24:32
----------------------
2005-10-9 14:24:24SQL> select add_months(sysdate,-12) from dual;ADD_MONTHS(SYSDATE,-12))--------------去年
-----------------------
2003-10-9 14:24:32
TO_NUMBER((TO_CHAR(B.INVENTORYDATE, 'yyyymm') BETWEEN '200401' AND '200412'))
加100怎么会是下一年呢??
where INVENTORYDATE>=to_date(to_number('20030101')+10000)