All thing of the world!

Oracle LAST_DAY 설명 : 오라클 함수 본문

IT/Oracle DBMS

Oracle LAST_DAY 설명 : 오라클 함수

WorldSeeker 2021. 4. 1. 10:03

1. 함수의 목적 
  
    Oracle LAST_DAY는 파라미터로 받은   date의 해당월 최종일을 구한다.


2. 샘플을 통한 개념 퀵뷰

현재일이 2017/07/31이라는 가정하에, 20170/07월의 마지막 날을 구하고, 마지막날과 현재일의 차이 날짜수를 구한다.

 SELECT SYSDATE,
  2  LAST_DAY(SYSDATE) "Last",
  3  LAST_DAY(SYSDATE) - SYSDATE "Days Left"
  4  FROM DUAL;

SYSDATE          Last         Days Left
--------           --------           ----------
17/07/29  17/07/31                    2

3. 사용방법  


4. 함수 PARAMETER 설명
  
     
달의 최종일은 session parameter인 NLS_CALENDAR에 의해 정의된다. 
     함수에 의해 리턴되는 데이터 타입은 DATE이다.


    [date]

    입력 파라미터로 여기에 입력되는 달의 마지막 날짜를 구한다.

5. 다양한 샘플표현

example1) employees테이블의 hire_date로 해당월의 마지막 날을 구하고 5달을 더한 날짜를 구한다.

SELECT last_name, hire_date,
TO_CHAR(ADD_MONTHS(LAST_DAY(hire_date), 5)) "Eval Date"
FROM employees
ORDER BY last_name, hire_date;


 example2) 형변환이 가능한 날짜형식의 스트링이 들어와도 가능하다.

 select last_day('20170707') from dual;

LAST_DAY
--------
17/07/31

example3) 스트링으로 월까지만 공급하면 에러가 난다.

select last_day('201707') from dual;

select last_day('201707') from dual
                *
1행에 오류:
ORA-01861: 리터럴이 형식 문자열과 일치하지 않음

 

Comments