ADD_YEARS 스칼라 함수
ADD_YEARS 함수는 첫 번째 인수에 지정된 년 수를 더한 값을 나타내는 날짜 시간 값을 리턴합니다.
스키마는 SYSIBM입니다.
- 표현식
- 시작 날짜를 지정하는 표현식입니다. 표현식은 DATE, TIMESTAMP, CHAR 또는 VARCHAR 데이터 유형인 값을 리턴해야 합니다. 유니코드 데이터베이스에서 표현식은 GRAPHIC 또는 VARGRAPHIC 데이터 유형이 될 수도 있습니다. CHAR, VARCHAR, GRAPHIC 및 VARGRAPHIC은 내재된 캐스팅을 사용하여 지원됩니다. expression이 CHAR, VARCHAR, GRAPHIC 또는 VARGRAPHIC 데이터 유형인 경우 TIMESTAMP 스칼라 함수에서 허용하는 유효한 문자열이어야 합니다.
- 숫자 표현식
- expression에 지정된 시작 날짜에 추가할 년 수를 지정하는 표현식입니다. 표현식은 내장 숫자, CHAR 또는 VARCHAR 데이터 유형인 값을 리턴해야 합니다. 유니코드 데이터베이스에서 표현식은 GRAPHIC 또는 VARGRAPHIC 데이터 유형이 될 수도 있습니다. CHAR, VARCHAR, GRAPHIC 및 VARGRAPHIC은 내재된 캐스팅을 사용하여 지원됩니다. 표현식이 INTEGER가 아닌 경우 함수가 평가되기 전에 INTEGER로 캐스트됩니다. 음수 숫자 값을 사용하여 년 수를 뺄 수 있습니다.
함수의 결과는 expression이 시간소인인 경우 expression과 동일한 정밀도를 사용하는 시간소인입니다. 그렇지 않은 경우 함수의 결과는 날짜입니다. 인수가 널(NULL)일 수 있는 경우, 결과는 널(NULL)일 수 있습니다. 인수가 널(NULL)인 경우, 결과는 널(NULL) 값입니다.
결과가 윤년이 아닌 해의 2월 29일인 경우 일이 28로 변경되고 SQLCA의 경고 표시기가 조정을 표시하도록 설정됩니다.
예:
- 오늘이 2007년 1월 31일이라고 가정하십시오. 현재 일에 1년을
더하여 호스트 변수 ADD_YEAR를 설정하십시오.
호스트 변수 ADD_YEAR는 2008-01-31을 나타내는 값으로 설정됩니다.SET :ADD_YEAR = ADD_YEARS(CURRENT_DATE, 1) - DATE가 값이 1965년 7월 27일인 호스트 변수라고 가정하십시오. 호스트 변수 ADD_YEAR를 해당 일에 3년을 더한 값으로 설정하십시오.
호스트 변수 ADD_YEAR는 해당 일에 3년을 더한 값 1968-07-27으로 설정됩니다.SET :ADD_YEAR = ADD_YEARS(:DATE,3) - ADD_YEARS 함수와 날짜 및 시간 산술을 사용하면 동일한 결과를
얻을 수 있습니다. 다음 예가 이를 보여줍니다.
두 경우에 모두 호스트 변수 DATEHV는 값 '2012-02-29'로 설정됩니다.SET :DATEHV = DATE('2008-2-29') + 4 YEARS SET :DATEHV = ADD_YEARS('2008-2-29', 4)이제 동일한 예를 고려하지만 3년을 추가합니다.
두 경우에 모두 호스트 변수 DATEHV는 값 '2011-02-28'로 설정됩니다.SET :DATEHV = DATE('2008-2-29') + 3 YEARS SET :DATEHV = ADD_YEARS('2008-2-29', 3) - DATE가 값이 1965년 7월 27일인 호스트 변수라고 가정하십시오. 호스트 변수
ADD_YEAR를 해당 일에서 3년을 뺀 값으로 설정하십시오.
호스트 변수 ADD_YEAR가 1962-07-27로 설정됩니다. 1965년 7월 27일에서 3년을 뺀 값입니다.SET :ADD_YEAR = ADD_YEARS(:DATE,-3)
