2015年1月9日金曜日

日時値に、時間や日を足す簡単な方法。




ある日時の、2時間後、1日後、5秒前とかをDHMS関数で簡単に求める方法を発見したので紹介します。
日付値と時間値から、日時値を作る小技。」を発展させたやり方なので、まずはそちらをご覧ください。




書き方


第4引数に元となる日時をいれて、あとは足したい日数,時間,分を第1引数から順番に指定すればok。
DHMS( 日数 , 時間 ,  , 日時  )


秒も足したい場合は、第4引数に「日時+秒」みたいな感じで書けばいけます。
DHMS( 日数 ,  ,  , 日時 + 秒  )






data DT1;
  format A B C D E e8601dt19.;

  A = input( '2001-02-10T10:20:30', e8601dt19. );

  * 2時間後 ;
  B = dhms( 0, 2, 0, A );

  * 2時間前 ;
  C = dhms( 0, -2, 0, A );

  * 1日と2時間後 ;
  D = dhms( 1, 2, 0, A );

  * 2時間5秒後 ;
  E = dhms( 0, 2, 0, A+5 );
run;


結果
A = 2001-02-10T10:20:30 元の日時値

B = 2001-02-10T12:20:30 2時間後
C = 2001-02-10T08:20:30 2時間前
D = 2001-02-11T12:20:30 1日と2時間後
E = 2001-02-10T12:20:35 2時間5秒後





0 件のコメント:

コメントを投稿