날짜 관련된 명령어정리 하기
SYSDATE
현재 날짜를 가져옴
SELECT
SYSDATE
FROM DUAL;
=======================================================================
형식에 맞춰서 가져오기
TO_CHAR
DATE 타입의 데이터를 CHAR타입으로 변환
SELECT
TO_CHAR(SYSDATE, 'YYYY-MM-DD') AS 테스트1,
TO_CHAR(SYSDATE, 'YYYY-MM-DD HH:MI:SS') AS 테스트2,
TO_CHAR(SYSDATE, 'YYYY-MM-DD HH24:MI:SS') AS 테스트2,
TO_CHAR(SYSDATE, 'YYYY') 연도,
TO_CHAR(SYSDATE, 'MM') 월,
TO_CHAR(SYSDATE, 'HH24') 시간
FROM DUAL;
시간 출력 HH << 기본값이 12 시간 단위이니 24 시간 단위가 필요하면 HH24 <<
TO_CHAR 은 문자형으로 변환시키는 함수이므로 날짜에만 국한되지 않는다.
TO_DATE
CHAR 타입의 데이터를 DATE 타입으로 변환
SELECT
TO
TO_DATE(20150316, 'YYYYMMDD')
FROM DUAL;
=======================================================================
ADD_MONTHS
± 월 데이터를 변환시 사용되는 함수
SELECT
TO_CHAR(ADD_MONTHS(SYSDATE, -1), 'YYYY-MM-DD') AS "한달 전",
TO_CHAR(ADD_MONTHS(SYSDATE, 0), 'YYYY-MM-DD') AS "이번 달",
TO_CHAR(ADD_MONTHS(SYSDATE, 1), 'YYYY-MM-DD') AS "한달 후",
TO_CHAR(ADD_MONTHS(SYSDATE, 12), 'YYYY-MM-DD') AS "1년 후",
TO_CHAR(ADD_MONTHS(SYSDATE, 120), 'YYYY-MM-DD') AS "10년 후"
FROM DUAL;
* 기준이 되는 날짜가 해당 월의 말일이 되는 경우 변환되는 날짜가 말일로 표시 될수 있다.
예) 8월 31일을 기준으로 잡아서 한달 후를 출력할수 9월 30일이 나온다.
=======================================================================
LAST_DAY
날짜 데이터의 마지막 일을 구해서 출력
SELECT
LAST_DAY(SYSDATE) 테스트1,
TO_CHAR(LAST_DAY(SYSDATE), 'YYYY-MM-DD') 테스트2
FROM DUAL;
=======================================================================
'DB > 오라클 SQL 명령어' 카테고리의 다른 글
오라클 AUTO_INCREMENT (인서트 자동증가) (0) | 2015.03.19 |
---|---|
날짜 명령어 사용 예 (0) | 2015.03.16 |
NULL 치환 법 ( NVL & NVL2 ) OR DECODE (0) | 2015.03.16 |
Decode & Case (0) | 2015.03.16 |
Outer Join (0) | 2015.03.16 |