문법 |
목적 |
LOCALTIMESTAMP함수는 timestamp의 현재 날짜와 시각을 출력한다.
current_timestamp는 time zone까지 출력되지만,localtimestamp는 time zone은 출력되지 않는다
LOCALTIMESTAMP함수는 TIMESTAMP 데이터형 값의 session time zone의
현재 날짜와 시각을 반환한다. 이 함수와 CURRENT_TIMESTAMP의 차이점은 LOCALTIMESTAMP함수는 TIMESTAMP 값을
반환하고, CURRENT_TIMESTAMP함수는 TIMESTAMP WITH TIME ZONE 값을 반환한다.
옵션 인수는 timestamp_precision은 반환되는 시간 값의 소수 초 정밀도(fractional
second precision)를 지정한다.
|
참 조 : CURRENT_TIMESTAMP |
예제 |
다음 에제는 LOCALTIMESTAMP함수와 CURRENT_TIMESTAMP함수의 차이점을
설명한다.
ALTER SESSION SET TIME_ZONE = '-5:00'; SELECT CURRENT_TIMESTAMP, LOCALTIMESTAMP FROM DUAL; CURRENT_TIMESTAMP LOCALTIMESTAMP ------------------------------------------------------------------- 04-APR-00 01.27.18.999220 PM -05:00 04-APR-00 01.27.19 PM ALTER SESSION SET TIME_ZONE = '-8:00'; SELECT CURRENT_TIMESTAMP, LOCALTIMESTAMP FROM DUAL; CURRENT_TIMESTAMP LOCALTIMESTAMP ----------------------------------- ------------------------------ 04-APR-00 10.27.45.132474 AM -08:00 04-APR-00 10.27.451 AM
만약 format mask를 가지고 LOCALTIMESTAMP함수를 이용한다면, 함수에 의해
반환되는 값과 format mask를 일치시켜야한다. 예를들어, 다음 테이블을 고려하자.
CREATE TABLE local_test (col1 TIMESTAMP WITH LOCAL TIME ZONE);
다음 문장은 mask가 함수의 반환되는 형식의 TIME ZONE portion을 포함하지 않아서
실패이다.
INSERT INTO local_test VALUES (TO_TIMESTAMP(LOCALTIMESTAMP, 'DD-MON-RR HH.MI.SSXFF'));
다음 에제는 LOCALTIMESTAMP의 반환 형식을 일치하는 올바른 format mask를
이용한다.
INSERT INTO local_test VALUES (TO_TIMESTAMP(LOCALTIMESTAMP, 'DD-MON-RR HH.MI.SSXFF PM'));