Sql sas中的多速率宏

Sql sas中的多速率宏,sql,sas,sas-macro,proc,Sql,Sas,Sas Macro,Proc,实际上,我正在尝试为下面的代码创建一个宏,因此在proc sql中,我不需要创建两个不同的代码,因为它是从proc导入中提取的,并在proc sql中创建两个数据集 任何帮助都将不胜感激:) market是一个本地宏变量,它只存在于宏本身中。将out参数添加到宏中,并将sql语句放在宏中 %macro import(market, out); FILENAME REFFILE "PLANNING\BASE_PORTFOLIO\BS_PORT/Test/&market..csv"

实际上,我正在尝试为下面的代码创建一个宏,因此在proc sql中,我不需要创建两个不同的代码,因为它是从proc导入中提取的,并在proc sql中创建两个数据集

任何帮助都将不胜感激:)


market
是一个本地宏变量,它只存在于宏本身中。将
out
参数添加到宏中,并将sql语句放在宏中

%macro import(market, out);

    FILENAME REFFILE "PLANNING\BASE_PORTFOLIO\BS_PORT/Test/&market..csv";

    PROC IMPORT DATAFILE=REFFILE DBMS=CSV OUT=&market. (KEEP= a b c)
        REPLACE; 
        GETNAMES=YES;
    RUN;

    PROC SQL; CREATE TABLE &out. AS 
        SELECT a,b,c
        FROM &market. t1 
        ;
    quit;

%mend import;

%import (InputFile1, Outfile1); 
%import (InputFile2, Outfile2);

market
是一个本地宏变量,它只存在于宏本身中。将
out
参数添加到宏中,并将sql语句放在宏中

%macro import(market, out);

    FILENAME REFFILE "PLANNING\BASE_PORTFOLIO\BS_PORT/Test/&market..csv";

    PROC IMPORT DATAFILE=REFFILE DBMS=CSV OUT=&market. (KEEP= a b c)
        REPLACE; 
        GETNAMES=YES;
    RUN;

    PROC SQL; CREATE TABLE &out. AS 
        SELECT a,b,c
        FROM &market. t1 
        ;
    quit;

%mend import;

%import (InputFile1, Outfile1); 
%import (InputFile2, Outfile2);

非常感谢,为我工作:)非常感谢,为我工作:)