MAKEDATE 함수

설명

MAKEDATE 함수는 지정된 인자로부터 날짜를 반환한다. 인자로 1~9999 범위의 연도와 일(day of year)에 해당하는 INTEGER 타입을 지정할 수 있으며, 1/1/1~12/31/9999 범위의 DATE 타입을 반환한다. 일(day of year)이 해당 연도를 넘어가면 다음 연도가 된다. 예를 들어, MAKEDATE(1999, 366)은 2000-01-01을 반환한다.

단, 연도에 0~69 범위의 값을 입력하면 2000년~2069년으로 처리하고, 70~99 범위의 값을 입력하면 1970년~1999년으로 처리한다.

yeardayofyear가 모두 0이면 시스템 파라미터 return_null_on_function_errors의 값에 따라 다른 값을 반환한다. return_null_on_function_errors가 yes이면 NULL을 반환하고 no이면 에러를 반환하며, 기본값은 no이다.

구문

MAKEDATE(year, dayofyear)

예제

SELECT MAKEDATE(2010,277);

   makedate(2010, 277)

======================

  10/04/2010

 

SELECT MAKEDATE(10,277);

   makedate(10, 277)

====================

  10/04/2010

 

SELECT MAKEDATE(70,277);

   makedate(70, 277)

====================

  10/04/1970

 

SELECT MAKEDATE(100,3615902);

   makedate(100, 3615902)

=========================

  12/31/9999

 

SELECT MAKEDATE('9999','365');

   makedate('9999', '365')

======================

  12/31/9999

 

SELECT MAKEDATE(9999,366);

ERROR: Conversion error in date format.

 

SELECT MAKEDATE(0,0);

ERROR: Conversion error in date format.