ADD_HOURS 스칼라 함수

ADD_HOURS 함수는 첫 번째 인수에 지정된 시간을 더한 값을 나타내는 시간소인 값을 리턴합니다.

Read syntax diagramSkip visual syntax diagramADD_HOURS(expression, numeric-expression)

스키마는 SYSIBM입니다.

표현식
시작 시간소인을 지정하는 표현식입니다. 표현식은 TIMESTAMP, CHAR 또는 VARCHAR 데이터 유형인 값을 리턴해야 합니다. 유니코드 데이터베이스에서 표현식은 GRAPHIC 또는 VARGRAPHIC 데이터 유형이 될 수도 있습니다. CHAR, VARCHAR, GRAPHIC 및 VARGRAPHIC은 내재된 캐스팅을 사용하여 지원됩니다. 표현식은 DATE인 값을 리턴하지 않아야 합니다(SQLSTATE 42815). expression이 CHAR, VARCHAR, GRAPHIC 또는 VARGRAPHIC 데이터 유형인 경우 TIMESTAMP 스칼라 함수에서 허용하는 유효한 문자열이어야 합니다.
숫자 표현식
expression에 지정된 시작 시간소인에 추가할 시간 수를 지정하는 표현식입니다. 표현식은 내장 숫자, CHAR 또는 VARCHAR 데이터 유형인 값을 리턴해야 합니다. 유니코드 데이터베이스에서 표현식은 GRAPHIC 또는 VARGRAPHIC 데이터 유형이 될 수도 있습니다. CHAR, VARCHAR, GRAPHIC 및 VARGRAPHIC은 내재된 캐스팅을 사용하여 지원됩니다. 표현식이 INTEGER가 아닌 경우 함수가 평가되기 전에 INTEGER로 캐스트됩니다. 음수 숫자 값을 사용하여 시간을 뺄 수 있습니다.

함수의 결과는 expression이 시간소인인 경우 expression과 동일한 정밀도를 사용하는 시간소인입니다. 그렇지 않은 경우 결과는 TIMESTAMP(12)입니다. 인수가 널(NULL)일 수 있는 경우, 결과는 널(NULL)일 수 있습니다. 인수가 널(NULL)인 경우, 결과는 널(NULL) 값입니다.

예:

  1. 현재 시간소인이 2007년 1월 31일 01:02:03.123456이라고 가정하십시오. 현재 시간소인에 1시간을 더하여 호스트 변수 ADD_HOUR를 설정하십시오.
       SET :ADD_HOUR = ADD_HOURS(CURRENT TIMESTAMP, 1)
    호스트 변수 ADD_HOUR는 2007-01-31-02.02.03.123456을 나타내는 값으로 설정됩니다.
  2. TIMESTAMP가 July 27, 1965 23:58:59 값을 사용하는 호스트 변수라고 가정하십시오. 호스트 변수 ADD_HOUR를 해당 시간소인에 3시간을 더한 값으로 설정하십시오.
       SET :ADD_HOUR = ADD_HOURS(:TIMESTAMP,3)
    호스트 변수 ADD_HOUR는 시간소인에 3시간을 더한 값 1965-07-28-02.58.59로 설정됩니다.
  3. ADD_HOURS 함수와 날짜 및 시간 산술을 사용하면 동일한 결과를 얻을 수 있습니다. 다음 예가 이를 보여줍니다.
       SET :TIMESTAMPHV = TIMESTAMP '2008-2-28-22.58.59' + 4 HOURS
       SET :TIMESTAMPHV = ADD_HOURS( TIMESTAMP '2008-2-28-22.58.59', 4)
    두 경우에 모두 호스트 변수 TIMESTAMPHV는 값 '2008-02-29-02.58.59'로 설정됩니다.
    이제 동일한 예를 고려하지만 28시간을 추가합니다.
       SET :TIMESTAMPHV = TIMESTAMP '2008-2-28-22.58.59' + 28 HOURS
       SET :TIMESTAMPHV = ADD_HOURS(TIMESTAMP '2008-2-28-22.58.59', 28)
    두 경우에 모두 호스트 변수 TIMESTAMPHV는 값 '2008-03-01-02.58.59'로 설정됩니다.
  4. TIMESTAMP가 July 27, 1965 23:58:59 값을 사용하는 호스트 변수라고 가정하십시오. 호스트 변수 ADD_HOUR를 해당 시간소인에서 3시간을 뺀 값으로 설정하십시오.
       SET :ADD_HOUR = ADD_HOURS(:TIMESTAMP,-3)
    호스트 변수 ADD_HOUR가 1965-07-27-20.58.59로 설정됩니다. 1965년 7월 27일 23:58:59에서 3시간을 뺀 값입니다.