[SQLD] 날짜 함수 정리

헤븐리뷰·2023년 3월 4일
0

SQLD

목록 보기
3/7
post-thumbnail

날짜 함수

이 글은 [2023 유선배 SQL개발자(SQLD) 과외노트] 도서에서 정리한 글임을 밝힙니다.

1. SYSDATE

SYSDATE: 현재의 연, 월, 시, 분, 초를 반환해주는 함수
예: SYSDATE -> 2022-09-21 22:08:08

2. EXTRACT()

EXTRACT(): 날짜 데이터에서 특정 단위만을 출력해서 반환해주는 함수
예: EXTRACT(YEAR FROM SYSDATE) -> 2022
예: EXTRACT(MONTH FROM SYSDATE) -> 9
예: EXTRACT(DAY FROM SYSDATE) -> 21

3. ADD_MONTHS()

ADD_MONTHS(): 날짜 데이터에서 특정 개월 수를 더한 날짜를 반환해주는 함수

  • 날짜의 이전 달이나 다음 달에 기준 날짜의 일자가 존재하지 않으면 해당 월의 마지막 일자가 반환된다.
    예: ADD_MONTHS(TO_DATE('2022-12-31', 'YYYY-MM-DD'), -1) -> 2022-11-30
    예: ADD_MONTHS(TO_DATE('2022-12-31', 'YYYY-MM-DD'), 1) -> 2022-01-31
-- sysdate: 현재의 연, 월, 일, 시, 분, 초를 반환해주는 함수 (nls_date_format에 따라서 sysdate의 출력 양식은 달라질 수 있음)
-- 예: SYSDATE -> 2021-09-21 22:08:08
select sysdate from dual;

-- extract(특정 단위 FROM 날짜 데이터): 날짜 데이터에서 특정 단위만을 출력해서 반환해주는 함수
-- 특정 단위: YEAR, MONTH, DAY, HOUR, MINUTE, SECOND  
-- 예: extract(month from sysdate) -> 9
select extract(year from sysdate) as year,
	   extract(month from sysdate) as month,
	   extract(day from sysdate) as day
from dual;

-- add_months(날짜 데이터, 특정 개월 수): 날짜 데이터에서 특정 개월 수를 더한 날짜를 반환해주는 함수
-- 날짜의 이전 달이나 다음 달에 기준 날짜의 일자가 존재하지 않으면 해당 월의 마지막 일자가 반환된다.
-- 예: add_months(to_date('2021-12-31', 'YYYY-MM-DD'), -1) -> 2021-11-30
select add_months(to_date('2021-12-31', 'YYYY-MM-DD'), -1) as prev_month,
	   add_months(to_date('2021-12-31', 'YYYY-MM-DD'), 1) as next_month
from dual;
profile
데이터로 세상을 쓰고 읽고 싶은 헤븐리뷰입니다.

0개의 댓글