ADD_MONTHS 함수는 오라클에서 사용가능한 함수이며, 자신이 원하는 날짜에 특정 개월 수를 더한 값을 추출할 수 있다.
용법은 다음과 같다.
☞ ADD_MONTHS( 날짜, +개월 수 )
쿼리 결과를 보면 이해하기 쉽다.
SELECT A.DT
, TO_CHAR(ADD_MONTHS(A.DT, 2),'YYYY-MM-DD') ADD_DT
FROM (SELECT TO_CHAR(TO_DATE('20180530','YYYYMMDD'), 'YYYY-MM-DD') AS DT
FROM DUAL) A
☞ 참고① : 2월의 경우 28일까지밖에 존재하지 않기 때문에 마지막 날로 조회가 된다.
SELECT A.DT
, TO_CHAR(ADD_MONTHS(A.DT, 2),'YYYY-MM-DD') ADD_DT
FROM (SELECT TO_CHAR(TO_DATE('20181230','YYYYMMDD'), 'YYYY-MM-DD') AS DT
FROM DUAL) A
☞ 참고② : 2월 28일을 입력하고 2개월을 더한다고 했을 때, 4월 28일을 예상할 수 있지만 4월의 마지막 날이 조회된다.
SELECT A.DT
, TO_CHAR(ADD_MONTHS(A.DT, 2),'YYYY-MM-DD') ADD_DT
FROM (SELECT TO_CHAR(TO_DATE('20180228','YYYYMMDD'), 'YYYY-MM-DD') AS DT
FROM DUAL) A
상황에 따라 사용이 가능할 것 같다.
+ 피드백은 언제나 환영입니다 :)