작성일자 : 2023-11-15
Ver 0.1.1
0.Intro
Oracle의 날짜 DATE 컬럼에서 월을 더하고 뺄때 ADD_MONTHS() 내장 함수를 사용하기도 한다.
그렇지만, Year, Day, Hour, Minute, Second를 더하고 빼고자할 때는 ADD_MONTH로는 Year를 빼고는 제한된다.
이런 경우 INTERVAL 을 이용하면 보다 직관적이고 쉽게 날짜를 컨트롤 할 수 있다.
1.How to
SELECT TO_DATE('2023-11-15','YYYY-MM-DD') AS TIME
,TO_DATE('2023-11-15','YYYY-MM-DD') + INTERVAL '10' YEAR(2) AS "10 Years Later"
,TO_DATE('2023-11-15','YYYY-MM-DD') + INTERVAL '-5' YEAR(2) AS "5 Years Before"
,TO_DATE('2023-11-15','YYYY-MM-DD') + INTERVAL '8' MONTH(2) AS "8 Months Later"
,TO_DATE('2023-11-15','YYYY-MM-DD') + INTERVAL '-12' MONTH(2) AS "12 Months Before"
,TO_DATE('2023-11-15','YYYY-MM-DD') + INTERVAL '14' DAY(2) AS "14 Days Later"
,TO_DATE('2023-11-15','YYYY-MM-DD') + INTERVAL '-20' DAY(2) AS "20 Days Before"
,SYSDATE + (INTERVAL '03:30' HOUR TO MINUTE) AS "Add 3 hour 3 minutes"
,SYSDATE + (INTERVAL '10:30' MINUTE TO SECOND) AS "Add 10 minutes 30 Seconds"
,SYSDATE + (INTERVAL '1-1' YEAR TO MONTH) AS "Add 1 year 1 month"
FROM DUAL;