반응형
이 전 [오라클|Oracle] 날짜타입 가지고 놀기 - TO_DATE, TOCHAR ☜ 포스트에서 날짜 타입을 제어하는 방법을 알아봤었습니다. TO_DATETIME 과 SYSDATE를 사용하는 방법이었습니다.
그런데, 이 방법은 년-월-일 시:분:초 까지만 제어나 통제가 가능한 방법이었습니다.
그래서 오늘은 초(Second)의 소수점까지 제어할 수 있는 함수를 알아보도록 하겠습니다.
위 제목에서도 나와있듯이 TO_TIMESTAMP 함수 입니다.
기본적으로 TIMESTAMP 함수를 호출하는 방법입니다.
SELECT SYSTIMESTAMP FROM DUAL |
NOW | |
2014/08/28 04:52:48.420100000 |
TIMESTAMP 타입을 CHAR 타입으로 변환하는 방법입니다.
SELECT TO_CHAR(SYSTIMESTAMP, 'YYYY-MM-DD HH24:MI:SS.FF4') NOW FROM DUAL |
NOW | |
2014-08-28 13:50:28.4997 |
붉은 색으로 표시한 ' FF4' 이 부분이 바로 소수점 자리 수를 제어하는 부분입니다. FF4 는 소수점 4째 자리까지 표시하겠다는 의미이며, FF9는 9째 자리까지 제어한다는 의미입니다.
반대로 CHAR 타입을 TIMESTAMP 타입으로 변경하는 방법입니다.
SELECT TO_TIMESTAMP('2014-08-28 13:53:08', 'YYYY-MM-DD HH24:MI:SS') NOW FROM DUAL |
NOW | |
2014/08/28 13:53:08.000000000 |
TIMESTAMP 타입을 계산하는 방식입니다.
이전 DATETIME 형식은 1일을 1로 보고 나머지 시간을 계산하면 된다고 설명드렸었는데요....
TIMESTAMP 타입은 INTERVAL을 사용합니다.
SELECT TO_CHAR(SYSTIMESTAMP, 'YY-MM-DD HH24:MI:SS.FF2') NOW , TO_CHAR(SYSTIMESTAMP + INTERVAL '1 01:01:01.01' DAY TO SECOND, 'YY-MM-DD HH24:MI:SS.FF2') NOW_PLUS FROM DUAL; |
NOW | NOWPLUS | |
14-08-28 14:00:49.05 | 14-08-29 15:01:50.06 |
붉은 색의 INTERVAL '1 01:01:01.01' DAY TO SECOND 의 의미는 하루하고 한 시간 일분 1과 .01 초를 더하겠다는 의미입니다.
반응형
'IT 개발' 카테고리의 다른 글
[C#] 문자열에서 특정한 문자가 존재하는 위치 확인하기 - IndexOf (0) | 2014.09.11 |
---|---|
[C#] Component One (C1) FlexGrid 원하는대로 (맘대로) Cell Merge (셀 합치기) 하기 (0) | 2014.09.11 |
[오라클|Oracle] GROUP 별로 따로 ROWNUM 주기 - PARTITION BY (1) | 2014.07.17 |
[오라클|Oracle] 위(이전)/아래(이후) Row의 값 가져오기 - LAG, LEAD (0) | 2014.07.16 |
[오라클|Oracle] 여러 개의 테이블을 하나처럼 만들기 - UNION / UNION ALL (0) | 2014.07.12 |