[ DB2.Funciton - 일자와일자_사이의_간격구하기 ]

 

* From일자에서 To일자를 뺀 일수를 반환됩니다 *

 

SET SCHEMA MISADM;

 

SET CURRENT PATH = "SYSIBM","SYSFUN","SYSPROC","MISADM";

 

CREATE FUNCTION COM.GET_DATEDIFF

 (ASFRDATE VARCHAR(8),

  ASTODATE VARCHAR(8)

 )

  RETURNS INTEGER

  SPECIFIC COM.GET_DATEDIFF

  LANGUAGE SQL

  DETERMINISTIC

  READS SQL DATA

  STATIC DISPATCH

  CALLED ON NULL INPUT

  EXTERNAL ACTION

  INHERIT SPECIAL REGISTERS

  BEGIN ATOMIC

    DECLARE vReturn INTEGER;

    SET vReturn = (

      SELECT DAYS(DATE(SUBSTR(asFrDate,1,4) ||'-'|| SUBSTR(asFrDate,5,2) ||'-'

          || SUBSTR(asFrDate,7,2))) - DAYS(DATE(SUBSTR(asToDate,1,4) ||'-'||

          SUBSTR(asToDate,5,2) ||'-'|| SUBSTR(asToDate,7,2)))

        FROM COM.Z_COMCDCOD_TBL

        FETCH FIRST 1 ROWS ONLY ) ;

    IF vReturn IS NULL THEN

      SET vReturn = 0 ;

    END IF ;

    RETURN vReturn;

  END;

 

COMMENT ON FUNCTION COM.GET_DATEDIFF

 (VARCHAR(8),

  VARCHAR(8)

 )

  IS 'From일자에서 To일자를 뺀 일수를 반환됩니다.';

 

 

Posted by 농부지기
,