全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
1061 2
2014-06-16
各位大侠,我现在重复处理如下内容:
data a2004;
     set xm.a2004;
run;
data sss;
    set xm.sss;
run;
proc sql;
    create table  a2004s as
   select a2004.*, sss.* from a2004 left join on sss on a2004.b=sss.b;
run;
data a2005;
     set xm.a2005;
run;
data sss;
    set xm.sss;
run;
proc sql;
    create table  a2005s as
   select a2005.*, sss.* from a2004 left join on sss on a2005.b=sss.b;
run;

......
......
data a2099;
     set xm.a2099;
run;
data sss;
    set xm.sss;
run;
proc sql;
    create table  a2099s as
   select a2004.*, sss.* from a2099 left join on sss on a2099.b=sss.b;
run;
这样一遍遍的复制、粘贴、修改,很麻烦,效率也很低。不知道如何通过建一个宏程序来简化该过程。希望各位大侠不吝赐教。谢谢。谢谢。谢谢。

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2014-6-17 09:21:28
%macro test(from=2004,to=2099);

        data sss;
            set xm.sss;
        run;  

   %do i=&from %to &to;             
                data a&i;
                     set xm.a&i;
                run;
                proc sql;
                    create table  a&i.s as
                   select a&i..*, sss.* from a&i left join sss on a&i..b=sss.b;
                quit;
        %end;
%mend;

%test()
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2014-6-17 10:52:00
pobel 发表于 2014-6-17 09:21
%macro test(from=2004,to=2099);

        data sss;
谢谢。谢谢
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群