YEARS_BETWEEN 스칼라 함수
YEARS_BETWEEN 함수는 지정된 인수 간 전체 년 수를 리턴합니다.
스키마는 SYSIBM입니다.
- expression1
- 두 개의 날짜 시간 값 간 전체 년 수를 계산하기 위해 첫 번째 날짜 시간 값을 지정하는 표현식입니다. 표현식은 DATE, TIMESTAMP, CHAR 또는 VARCHAR 데이터 유형인 값을 리턴해야 합니다. 유니코드 데이터베이스에서 표현식은 GRAPHIC 또는 VARGRAPHIC 데이터 유형이 될 수도 있습니다. CHAR, VARCHAR, GRAPHIC 및 VARGRAPHIC은 내재된 캐스팅을 사용하여 지원됩니다. expression1이 CHAR, VARCHAR, GRAPHIC 또는 VARGRAPHIC 데이터 유형인 경우 TIMESTAMP 스칼라 함수에서 허용하는 유효한 문자열이어야 합니다.
- expression2
- 두 개의 날짜 시간 값 간 전체 년 수를 계산하기 위해 두 번째 날짜 시간 값을 지정하는 표현식입니다. 표현식은 DATE, TIMESTAMP, CHAR 또는 VARCHAR 데이터 유형인 값을 리턴해야 합니다. 유니코드 데이터베이스에서 표현식은 GRAPHIC 또는 VARGRAPHIC 데이터 유형이 될 수도 있습니다. CHAR, VARCHAR, GRAPHIC 및 VARGRAPHIC은 내재된 캐스팅을 사용하여 지원됩니다. expression2 가 CHAR, VARCHAR, GRAPHIC 또는 VARGRAPHIC 데이터 유형인 경우 TIMESTAMP 스칼라 함수에서 허용하는 유효한 문자열이어야 합니다.
expression1과 expression2 사이에 만 1년 미만이 있는 경우 결과는 0입니다. expression1이 expression2보다 이후인 경우 결과는 양수입니다. expression1이 expression2보다 이전인 경우 결과는 음수입니다. expression1 또는 expression2에 시간 정보가 있는 경우 이 정보는 전체 년 수를 판별하는 데에도 사용됩니다. expression1 또는 expression2에 시간 정보가 없는 경우 자정(00.00.00)은 시간 정보가 누락된 인수에 사용됩니다.
함수의 결과는 INTEGER입니다. 인수 중 하나가 널(NULL)일 수 있는 경우, 결과는 널(NULL)일 수 있습니다. 인수 중 하나가 널(NULL)인 경우, 결과는 널(NULL) 값입니다.
YEARS_BETWEEN 함수는 다음 표현식의
동의어입니다.
YEAR( TIMESTAMP( expression1, 12 ) – TIMESTAMP( expression2, 12 ) )예:
- 호스트 변수 NUM_YEARS를 2013-02-28과 2012-02-29 사이의
전체 년 수로 설정하십시오.
2012년 2월 29일이 있어서 인수 사이에 만 1년보다 1일 적게 있으므로 호스트 변수 NUM_YEARS는 0으로 설정됩니다.SET :NUM_YEARS = YEARS_BETWEEN(DATE '2013-02-28', DATE '2012-02-29') - 호스트 변수 NUM_YEARS를 2013-12-31과 2001-01-01 사이의 전체 년 수로
설정하십시오.
인수 사이에 만 13년의 전체 년 수보다 1일 적게 있으므로 호스트 변수 NUM_YEARS가 12로 설정됩니다. 첫 번째 인수가 두 번째 인수 이후이므로 양수입니다.SET :NUM_YEARS = YEARS_BETWEEN(DATE '2013-12-31', DATE '2001-01-01') - 호스트 변수 NUM_YEARS를 2001-01-01-00.00.00과 2013-12-31-23.59.59
사이의 전체 년 수로 설정하십시오.
인수 사이에 만 13년의 전체 년 수보다 1일 적게 있으므로 호스트 변수 NUM_YEARS가 -12로 설정됩니다. 첫 번째 인수가 두 번째 인수보다 이전이므로 음수입니다.SET :NUM_YEARS = YEARS_BETWEEN(TIMESTAMP '2001-01-01-00.00.00', TIMESTAMP '2013-12-31-23.59.59')
