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
반응형
'SQL > ORACLE' 카테고리의 다른 글
[ORACLE 스킬] Oracle 오라클 중복 데이터 찾는 방법 (0) | 2017.10.30 |
---|---|
[ORACLE 에러] ORA-01858: a non-numeric character was found where a numeric was expected [출처] ORA-01858: a non-numeric character was found where a numeric was expected (0) | 2017.10.30 |
오라클 테이블, 컬럼 정보 보기 (0) | 2017.01.12 |
oracle 테스트 및 답안 (0) | 2016.05.20 |
오라클 테이블 복사하기 (0) | 2016.05.20 |
DataBase-SQLPLUS(oracle 9i에서 향상된 DML과 DDL(다중테이블 insert-무조건insert, insert all, insert first, Pivoting insert) (0) | 2016.05.17 |
이력 테이블에서 최종 데이터만 조회하기 (0) | 2016.03.18 |
오라클에서 개행문자 제거하기 (0) | 2016.03.18 |