사용자 도구

사이트 도구


dbms:oracle:devel:oracledatefunction

문서의 이전 판입니다!


오라클 날짜 함수

날짜 함수

문형 사용 예
문형 결과
SYSDATE SYSDATE 99/05/10
SYSTIMESTAMP SYSTIMESTAMP 07/03/07 10:55:24.260425 +09:00
LAST_DAY(날짜값) LAST_DAY('98/02/17') 98/02/28
NEXT_DAY(날짜값, 요일 문자) NEXT_DAY('98/02/17','FRIDAY') 98/02/20
MONTHS_BETWEEN (날짜값1,날짜값2) MONTHS_BETWEEN('97/04/26','95/06/22') 21.1290323
ADD_MONTHS(날짜값, 숫자값) ADD_MONTHS('95/06/22',21) 97/04/22
ROUND(날짜값, 자리수) 현재 날짜가 1999년 5월 10일이라 가정하자.
ROUND(SYSDATE,'MONTH')
99/05/01
TRUNC(날짜값, 자리수) 현재 날짜가 1999년 5월 10일이라 가정하자.
TRUNC(SYSDATE,'YEAR')
99/01/01
EXTRACT(날짜 및 시각 FROM 날짜값) 현재 날짜가 1999년 5월 10일이라 가정하자.
EXTRACT ( YEAR FROM SYSDATE )
1999
TO_YMINTERVAL(문자값) 현재 날짜가 1999년 5월 10일이라 가정하자.
SYSDATE + TO_YMINTERVAL('01-02')
00/07/10
  • SYSDATE에서 시, 분, 초까지 출력하고 싶은 경우는 변환함수를 사용해야 합니다.
    SQL> select to_char(sysdate,'YYYY-MM-DD HH24:MI:SS') from dual;
  • Oracle10g 부터는 SYSDATE 대신 SYSTIMESTAMP 함수를 이용하면 좀 더 자세히 볼 수 있다.
  • MONTHS_BETWEEN 함수를 쓰는 경우는 큰 날짜를 앞에 써야 양수로 계산됩니다.

날짜에 대한 산술 연산

연산 결과치 사용목적
날짜 + 숫자 날짜 특정한 날로부터 몇일 후의 날짜 계산
날짜 - 숫자 날짜 특정한 날로부터 몇일 전의 날짜 계산
날짜 - 날짜 숫자 두 날짜사이의 차이를 숫자로 계산
날짜 + 숫자/24 날짜 날짜에 몇 시간 후를 계산
  • 날짜 + 날짜 연산은 불가능하다.
  • 월에 대한 연산은 MONTHS_BETWEEN이나 ADD_MONTHS함수를 통하여 개월차이나 몇 개월 후의 날짜값을 구할 수 있다.
  • 년(Year), 주(Week), 일(Day)등은 따로 제공되는 함수가 없습니다.
    이런 경우에 년차나 특정날짜로부터 며칠 후의 날짜값 등을 계산하고 싶으면 바로 날짜값에 산술연산을 함으로써 가능합니다.
dbms/oracle/devel/oracledatefunction.1173233154.txt.gz · 마지막으로 수정됨: 2007/03/07 11:05 저자 starlits