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년으로 처리한다.

구문

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

 

-- return_null_on_function_errors=yes

SELECT MAKEDATE(100,3615903);

   makedate(100, 3615903)

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

  NULL

 

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

   makedate('9999', '365')

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

  12/31/9999

 

-- return_null_on_function_errors=no

SELECT MAKEDATE(9999,366);

 

ERROR: Conversion error in date format.

 

-- return_null_on_function_errors=yes

SELECT MAKEDATE(9999,366);

   makedate(9999, 366)

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

  NULL