안녕하세요.
timestamp 에 + 1 을 하면 하루가 더해지잔아요.
다음 달을 더하는건 어떻게 하는거죠?
설마 + 30 은 아니겠죠? 어떤 달은 30 까지 있고 또 다른 어떤 달은 31 까지 있잔아요.
에효...
add_month 함수가 있네요.
원하시는 결과형이 timestamp 형인가요? date 형인가요? timestamp 형과 date 형은 서로 다른 데이터 타입입니다. 만약 timestamp 에 + 1 을 하게 되면 Date 형으로 바뀌어 버립니다. Add_month 함수를 사용해도 마찬가지로 Date 형이 반환됩니다. timestamp 형식을 그대로 유지하려면 Interval 형식으로 가감하셔야 합니다. SELECT dt , dt + 1 dt_1 , ADD_MONTHS(dt, 1) dt_2 , ts + 1 dt_3 , ADD_MONTHS(ts, 1) dt_4 , ts , ts + INTERVAL '1' DAY ts_1 , ts + INTERVAL '1' MONTH ts_2 , ts + NUMTODSINTERVAL(1, 'DAY') ts_3 , ts + NUMTOYMINTERVAL(1, 'MONTH') ts_4 FROM (SELECT sysdate dt, systimestamp ts FROM dual) ;