Skip to main content

2つのSAS日時値の間隔を取得する

INTCK関数
INTCK(interval, startDate, endDate, <任意>method)
proc ds2;
  data _null_;
    method run();
      dcl double startDate endDate mon day;
   
      startDate = inputn('2023/12/11', 'yymmdd10.');
      endDate = inputn('2025/12/01', 'yymmdd10.');

      mon = INTCK('MONTH', startDate, endDate, 'CONTINUOUS');      
      /*put 月数を算出mon=;

      */day = INTCK('DAY', startDate, endDate, 'CONTINUOUS');      
      put day=;
    end;
  enddata;
run;
quit;

interval

計算単位 指定する文字列
DAY
WEEK
MONTH
四半期 QTR
YEAR
SECOND
MINUTE
HOUR

method

指定する文字列 内容
CONTINUOUS, C, CONT 連続した期間を測定単位に指定します。
DISCRETE, D, DISC 連続しない期間を測定の単位に指定します。DISCRETEメソッドは、間隔の境界(月末など)を数えます。

https://documentation.sas.com/doc/ja/pgmsascdc/v_061/ds2ref/n096g3nwx05g7wn161ax2rdqmlfn.htm