在Oracle中,ADD_MONTHS函数可以用来在日期中添加指定的月数。当在年末使用ADD_MONTHS函数时,如果要添加的月数将导致新日期超出当前年份的范围,Oracle会自动将新日期转为下一年的日期。
例如,如果当前日期是2022年12月31日,执行以下查询:
SELECT ADD_MONTHS(TO_DATE('2022-12-31', 'YYYY-MM-DD'), 1) FROM dual;
结果将是:
01-JAN-23
这是因为在当前日期2022年12月31日上添加1个月将超出当前年份范围,所以Oracle将新日期转为2023年1月1日。