[오라클] 마지막 날짜 구하기 방법

오라클은 마지막 날짜를 구하기 위한 내장 함수가 존재합니다. 그 함수는 바로 LAST_DAY입니다. LAST_DAY는 날짜형 매개변수로 하여 해당 날짜의 마지막 날짜를 반환해 줍니다.

참고로 FIRST_DAY 함수는 존재하지 않습니다. 왜냐하면 첫 째 날은 항상 1일이기 때문입니다.

오라클 마지막 날짜 구하기 방법

LAST_DAY

적어도 마지막 날짜를 구하고자 하는 월까지는 설정을 하도록 추천합니다. 연도만 기입이 되는 경우에는 해당 연도의 1월을 기준으로 조회합니다.

연도만 설정하는 경우

SELECT LAST_DAY (TO_DATE ('2021', 'YYYY')) AS LASTDAY FROM DUAL;

LASTDAY
--------
21/01/31

연월을 설정하는 경우

SELECT LAST_DAY (TO_DATE ('202112', 'YYYYMM')) AS LASTDAY FROM DUAL;

LASTDAY
--------
21/12/31

일반적인 LAST_DAY 사용 방법

특정 연월일 YYYYMMDD를 매개변수로 하여 해당 연월의 마지막 날짜를 구하는 방법입니다.

SELECT LAST_DAY (TO_DATE ('20211215', 'YYYYMMDD')) AS LASTDAY FROM DUAL;

LASTDAY
--------
21/12/31

현재 시스템 시간을 기준으로 하여 해당 월의 마지막 날짜를 구하는 방법은 다음과 같습니다.

SELECT LAST_DAY (SYSDATE) FROM DUAL;

LAST_DAY
--------
21/01/31

NLS_CALENDAR

반환하는 마지막 날짜는 세션의 달력(calendar) 매개변수에 따릅니다.

SELECT * FROM V$NLS_PARAMETERS WHERE PARAMETER = 'NLS_CALENDAR';

PARAMETER
--------------------------------------------------------------------------------
VALUE
--------------------------------------------------------------------------------
NLS_CALENDAR
GREGORIAN

댓글