2016-10-25 9 views
0

私は、変更された行だけがテーブル名である複数のデータセットに対して、20行分のコードを再実行しています。コードに渡すためにテーブル名をパラメータ化する方法はありますか?私はパラメータとしてカラムを渡す例を見つけましたが、テーブル全体ではありません。proc sqlのSASでパラメータ値としてテーブルを渡すには?

ここでは、TABLE_NAMEをパラメータ化する場所の例を示します。

PROC SQL; 
SELECT COUNT(number) AS band_1 
FROM TABLE_NAME 
WHERE VAR < 620 

outer union 

SELECT COUNT(number) AS band_2 
FROM TABLE_NAME 
WHERE VAR BETWEEN 620 AND 639; 
RUN; 

答えて

1

(+ @テーブル名「から選択*」)。

%macro union(table_name); 
PROC SQL; 
    SELECT COUNT(number) AS band_1 
    FROM &TABLE_NAME 
    WHERE VAR < 620 

    outer union 

    SELECT COUNT(number) AS band_2 
    FROM &TABLE_NAME 
    WHERE VAR BETWEEN 620 AND 639; 
QUIT; 
%mend union; 

%union(a) 
%union(b) 
%union(c) 
0

あなたは 幹部のような動的なクエリを使用することができますが、マクロを構築し、テーブル名になりますパラメータを、提供することができます

関連する問題