오라클 날짜 함수 5가지 정리(SYSDATE, SYSTIMESTAMP, ADD_MONTHS, MONTHS_BETWEEN, LAST_DAY, NEXT_DAY)

오라클 날짜 함수 5가지 정리(SYSDATE, SYSTIMESTAMP, ADD_MONTHS, MONTHS_BETWEEN, LAST_DAY, NEXT_DAY)

우리는 데이터베이스 SQL작업시, 날짜 작업을 생각보다 자주 하게 되는데요, 오라클에서는 이러한 우리에게 효율적으로 처리할 수 있도록 다양한 날짜 함수를 제공해 줍니다.이번 글을 통해서 몇 가지 필수적인 날짜 함수와 이것들이 어떻게 사용되는지에 대해 알아보겠습니다

오라클 날짜 함수 5가지 정리(SYSDATE, SYSTIMESTAMP, ADD_MONTHS, MONTHS_BETWEEN, LAST_DAY, NEXT_DAY)

SYSDATE(현재 날짜 및 시간 가져오기)

SYSDATE 함수는 현재 날짜와 시간을 yyyy-mm-dd hh24:mi:ss 형식으로 반환.

이 함수는 데이터 항목의 타임스탬프를 기록하는 등 다양한 응용 분야에서 유용하게 사용 됨.

사용 예)

SELECT SYSDATE as TODAY,
       SYSDATE + 1 as TOMORROW,
       SYSDATE - 1 as YESTERDAY
FROM dual;

SYSTIMESTAMP(밀리세컨드를 포함한 더욱 자세한 타임스탬프)

SYSDATE보다 더욱 정밀한 타임스탬프가 필요한 경우, SYSTIMESTAMP 함수를 사용.

이 함수는 밀리세컨드까지의 현재 날짜와 시간을 반환하여 초단위로 정밀한 타임스탬프를 제공함.

사용 예)

SELECT SYSTIMESTAMP,
       TO_CHAR(SYSTIMESTAMP, 'YYYY-MM-DD HH24:MI:SS.FF') AS TIME
FROM dual;

ADD_MONTHS(날짜에 개월 더하기 or 빼기)

ADD_MONTHS 함수를 사용하면 주어진 날짜에 지정된 개월 수를 더하거나 빼는 것이 가능함. 년도와 월을 적절하게 조정하고, 결과 날짜가 존재하지 않는 경우 해당 월의 마지막 날짜를 가리킴.

사용 예)

SELECT SYSDATE AS TODAY,
       ADD_MONTHS(SYSDATE, 1) AS NEXT_MONTH,
       ADD_MONTHS(SYSDATE, -1) AS PREVIOUS_MONTH,
       ADD_MONTHS(TO_DATE('2023-01-31'), 1) AS FEBRUARY_END
FROM dual;

MONTHS_BETWEEN(개월 차이 계산)

MONTHS_BETWEEN 함수는 두 날짜 간의 개월 차이를 계산함.

이 함수는 직원의 근속 기간을 결정하거나 각 이벤트 간의 기간을 계산하는데 자주 사용됨.

사용 예)

SELECT profno,
       hiredate,
       MONTHS_BETWEEN(SYSDATE, hiredate) AS TENURE,
       ADD_MONTHS(hiredate, 6) AS REVIEW
FROM professor
WHERE MONTHS_BETWEEN(SYSDATE, hiredate) < 120;

LAST_DAY와 NEXT_DAY(해당 월의 마지막 날짜와 다음 특정 요일)

LAST_DAY는 주어진 날짜가 속한 월의 마지막 날짜를 반환함. 반면 NEXT_DAY 함수는 주어진 날짜 이후의 특정한 요일의 날짜를 계산함.

사용 예)

SELECT SYSDATE AS TODAY,
       LAST_DAY(SYSDATE) AS END_OF_MONTH,
       NEXT_DAY(SYSDATE, 'SAT') AS NEXT_SATURDAY
FROM dual;

이번 글에서는 다양한 오라클 날짜 함수를 살펴보았는데요, 이러한 함수들을 잘 사용하여 다양한 날짜 계산과 조작을 할 수 있습니다. 우리가 생각보다 자주 사용하는 이러한 날짜 함수를 잘 이해하고 사용한다면, 관련된 쿼리를 최대한 쉽고 정확하게 사용하실 수 있을 것입니다.

이전 글 – [오라클] 조인 INNER JOIN(EQUI JOIN과 NON-EQUI JOIN)에 대해 알아보자

이전 글 – 오라클 데이터 조작어 DML(INSERT, UPDATE, DELETE) 활용 방법

이전 글 – 오라클 데이터 무결성 제약조건 정리 (기본키,외래키,참조키, 제약조건 생성, 추가, 삭제, 비활성화)

이전 글 – 오라클 인덱스에 대해 알아보자 (데이터베이스 실무에서 효율적으로 사용 할 수 있는 Oracle Index)

이전 글 – 오라클 뷰(VIEW) 조회 및 사용방법 (개념과 특징,종류, 장단점, 인라인뷰)

이전 글 – 오라클 사용자 권한 제어 (4가지 – 시스템 권한, 객체 권한, 롤, 동의어)

이전 글 – 오라클(데이터 웨어하우스) 분석 함수(효과적인 데이터 다차원 분석을 위한 강력한 도구)

이전 글 – 오라클 스케줄러와 JOB 관리 방법

이전 글 – 오라클 테이블 복구(테이블 데이터 복원하기)

Leave a Comment