前のページ|次のページ

DOステートメント

1単位として実行するステートメントのグループを指定します。

該当要素: DATAステップ
カテゴリ: 制御
種類: 実行

構文

DO;
...more SAS statements...
END;

引数なし

単純DOグループの処理には、DOステートメントを使用します。

詳細

DOステートメントは、DOグループの処理を指定するもっとも簡単な形式です。DOステートメントとENDステートメントではさまれたステートメントは、DOグループと呼ばれます。DOステートメントは、DOグループ内でネストさせることができます。
注: システムのメモリサイズによっては、使用可能なDOステートメントのネスト数が制限される場合があります。詳細については、SASドキュメントのシステムメモリでサポートされるDOステートメントのネストレベルについての説明を参照してください。
通常、単純DOステートメントは、IF条件が真か偽かに基づいてステートメントのグループの実行を指定するIF-THEN/ELSEステートメントの中で使用されます。

比較

DOステートメントは、他に3種類あります。
  • 反復DOステートメントは、インデックス変数の値に基づいて、DOステートメントとENDステートメントにはさまれている各ステートメントを実行します。反復DOステートメントにはWHILE句またはUNTIL句を含めることができます。
  • DO UNTILステートメントは、DOループを繰り返した後に条件を毎回確認して、条件が真になるまでDOループ内のステートメントを実行します。
  • DO WHILEステートメントは、DOループを繰り返す前に条件を毎回確認して、条件が真の間だけDOループ内のステートメントを実行します。

例: DOステートメントの使用

この単純DOグループでは、YEARSの値が5を超えている場合にのみDOとENDにはさまれたステートメントが実行されます。YEARSの値が5以下の場合、DOグループのステートメントは実行されません。プログラムは、ELSEステートメントの後に続く割り当てステートメントを実行します。
if years>5 then
   do;
      months=years*12;
      put years= months=;
   end;
   else yrsleft=5-years;

関連項目:

前のページ|次のページ|ページの先頭へ