我遇到了一个非常神奇的问题想请教各位大神.....在我执行下列代码的时候,代码本身没有问题,但是sas就是不出结果,一定要我运行另外一段代码,才能把宏指令结果"顶"出来...这个过程弄得我非常莫名....想问下怎么解决
- %macro split;
- proc sql noprint;
- create table tmp as
- select distinct date_l_, _ric
- from data1;
- select count(*)
- into :obs
- from work.tmp;
- %let obs=&obs.;
- select date_l_, _ric, catx("_", "work.data", substr(_ric, 1, 13), date_l_)
- into :date_l_1-:date_l_&obs., :_ric1-:_ric&obs., :setname1-:setname&obs.
- from work.tmp;
- quit;
- data
- %do i = 1 %to &obs.;
- &&setname&i
- %end;
- ;
- set data1;
- select;
- %do i = 1 %to &obs.;
- when(_ric = "&&_ric&i" and date_l_ = &&date_l_&i) output &&setname&i;
-
- %end;
- otherwise;
- end;
- %mend;
- %split;
复制代码