■ INTERVAL 데이터 타입을 사용해 날짜 연산을 하는 방법을 보여준다.
▶ 예제 코드 (SQL)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
SET SERVEROUTPUT ON; DECLARE V_CREATE_TIME TIMESTAMP WITH TIME ZONE; V_INTERVAL1 INTERVAL YEAR TO MONTH; V_INTERVAL2 INTERVAL DAY TO SECOND; BEGIN V_CREATE_TIME := TIMESTAMP '2000-09-01 00:00:00 -5:00'; DBMS_OUTPUT.PUT_LINE(TO_CHAR(V_CREATE_TIME, 'yyyy-mm-dd HH24:mi:ss.ff')); -- 2000-09-01 00:00:00.000000000 -- 년 수와 달 수를 더한다. V_INTERVAL1 := INTERVAL '01-06' YEAR TO MONTH; V_CREATE_TIME := V_CREATE_TIME + V_INTERVAL1; DBMS_OUTPUT.PUT_LINE(TO_CHAR(V_CREATE_TIME, 'yyyy-mm-dd HH24:mi:ss.ff')); -- 2002-03-01 00:00:00.000000000 -- 일, 시간, 분, 초 수를 더한다. V_INTERVAL2 := INTERVAL '03 04:05:06.723112' DAY TO SECOND; V_CREATE_TIME := V_CREATE_TIME + V_INTERVAL2; DBMS_OUTPUT.PUT_LINE(TO_CHAR(V_CREATE_TIME, 'yyyy-mm-dd HH24:mi:ss.ff')); -- 2002-03-04 04:05:06.723112000 END; |