본문 바로가기
Database/Oracle

[ORACLE] LOCALTIMESTAMP()로 시간대 기반 데이터 정확히 처리하기

by Papa Martino V 2025. 6. 5.
728x90

오라클 LOCALTIMESTAMP()로 시간대 기반 데이터 정확히 처리하기
[Oracle] LOCALTIMESTAMP

 

LOCALTIMESTAMP() 함수는 오라클에서 로컬 세션의 현재 날짜와 시간을 반환하는 유용한 함수입니다. 이 글에서는 해당 함수의 기본 문법부터 실무에서 자주 활용되는 예제, 유사 함수와의 차이점까지 체계적으로 소개합니다.

1. LOCALTIMESTAMP 함수란?

LOCALTIMESTAMP는 타임존 정보를 포함하지 않는 TIMESTAMP 값을 반환합니다. 반환되는 값은 세션의 로컬 타임존을 기준으로 현재 시각을 나타냅니다.

기본 문법

LOCALTIMESTAMP [(precision)]
  • precision: 소수점 이하 초 단위 자릿수 (0~9)

2. LOCALTIMESTAMP 기본 사용 예제

예제 1: 기본 호출

SELECT LOCALTIMESTAMP FROM dual;
-- 결과: 04-JUN-25 10.32.45.123456

예제 2: 소수점 초 단위 지정

SELECT LOCALTIMESTAMP(2) FROM dual;
-- 결과: 04-JUN-25 10.32.45.12

3. LOCALTIMESTAMP와 관련 함수 비교

함수 타입 타임존 포함 용도
LOCALTIMESTAMP TIMESTAMP X 세션 기준 시각 반환 (정밀)
SYSTIMESTAMP TIMESTAMP WITH TIME ZONE O 세션 기준 시각 + 타임존 포함
SYSDATE DATE X 초 단위까지의 현재 날짜/시각

4. 실무 활용 예제

4-1. 테이블에 로컬 시간 기준으로 로그 저장

INSERT INTO log_table (log_time, message)
VALUES (LOCALTIMESTAMP, '로그 메시지 저장 완료');

4-2. LOCALTIMESTAMP로 시간 차 계산

SELECT order_id,
       order_time,
       LOCALTIMESTAMP - order_time AS hours_elapsed
FROM orders
WHERE order_time > LOCALTIMESTAMP - INTERVAL '2' HOUR;

4-3. 정밀한 시간 포맷 처리

SELECT TO_CHAR(LOCALTIMESTAMP, 'YYYY-MM-DD HH24:MI:SS.FF3') AS formatted_time
FROM dual;

5. LOCALTIMESTAMP 주의사항

  • 타임존이 포함되지 않기 때문에 글로벌 시스템에서는 SYSTIMESTAMP 권장
  • 서버와 클라이언트의 세션 타임존 설정이 다르면 실제 시간과 오차 발생 가능
  • 정밀 시간 연산 시 TIMESTAMP WITH TIME ZONE과의 비교 시 주의 필요

6. LOCALTIMESTAMP를 사용하는 이유

SYSDATE는 초 단위까지만 표현되며 DATE 타입이기 때문에, 마이크로초 또는 밀리초 단위 정밀도가 필요한 시스템에서는 LOCALTIMESTAMP가 더 적합합니다. 예를 들어, 고빈도 로그, 정밀 타이밍 기록, 시간차 분석 등에 활용됩니다.

7. LOCALTIMESTAMP를 활용한 응용 예제

7-1. 이전 1시간 이내 생성된 레코드 조회

SELECT *
FROM transaction_log
WHERE created_at > LOCALTIMESTAMP - INTERVAL '1' HOUR;

7-2. LOCALTIMESTAMP를 사용한 정렬

SELECT *
FROM user_activity
ORDER BY LOCALTIMESTAMP - activity_time DESC;

8. 결론

LOCALTIMESTAMP()는 Oracle에서 제공하는 정밀한 시간 처리를 위한 핵심 함수입니다. 타임존 정보를 제외한 현재 시각을 반환함으로써 단일 지역 기반의 시스템에서 가볍고 빠른 시간 연산이 가능합니다. 실무에서는 로그 저장, 정렬, 시간차 분석 등에 자주 활용되며, 초과 정밀도를 요하는 시스템에서는 반드시 익혀야 할 함수입니다.

참고자료

728x90