728x90
반응형

ORACLE(오라클) DATE TYPE


오라클에서 날짜를 표현하는 데이터 타입이다. 내부적으로는 7 바이트(byte)의 고정길이 숫자로 관리되어 진다.


숫자로 구성되어 있기 때문에 '+', '-' 연산이 가능하다. 그러나 예외적으로 '날짜(DATE) - 날짜(DATE)' 연산은


불가능하다. 예를들면,



1
2
3
4
5
6
7
-- 가능한 연산
SELECT SYSDATE + 1 FROM DUAL;
SELECT SYSDATE - 1 FROM DUAL;
SELECT SYSDATE - SYSDATE FROM DUAL;
 
-- 불가능한 연산 (ORA-00975: 날짜와 날짜의 가산은 할 수 없습니다.)
SELECT SYSDATE + SYSDATE FROM DUAL;


날짜(DATE)관련 함수


자주 사용되는 날짜관련 함수 몇 개를 소개한다.


 ADD_MONTH(DATE, NUMBER) DATE에 NUMBER 만큼의 월을 더한다.
 MONTHS_BETWEEN(DATE, DATE) 두 DATE 사이의 개월 차이를 반환한다.

 NEXT_DAY(DATE, NUMBER)

 DATE  이후에 해당하는 요일의 DATE를 반환. 1(일요일)~7(토요일)

 LAST_DAY(DATE)

 DATE에 해당하는 월의 마지막 DATE를 반환. 

 TO_CHAR(DATE, ['FORMAT'])

 DATE를 FORMAT에 맞는 문자열 형식으로 반환.

 TO_DATE(CHAR, ['FORMAT'])

 문자열 형식을 FORMAT에 맞는 DATE 타입으로 반환. 


[참고] FORMAT : YYYY(년도), MM(월), DD(일), HH24(시간), MI(분), SS(초) - 다양한 format이 더 존재함.



날짜(DATE) 비교


1
2
-- 날짜기간 조회 (0.99999 또는 1-1/24/60/60) 여기서 1은 1일이라고 보시면 됨
날짜컬럼 BETWEEN TO_DATE('20130101', 'YYYYMMDD') AND TO_DATE('20130131', 'YYYYMMDD')+0.99999



출처: http://devhome.tistory.com/71 [미주엘의 개발이야기]

728x90
반응형
블로그 이미지

nineDeveloper

안녕하세요 현직 개발자 입니다 ~ 빠르게 변화하는 세상에 뒤쳐지지 않도록 우리모두 열심히 공부합시다 ~! 개발공부는 넘나 재미있는 것~!

,