%macro b;
%do i=5 %to 1;
data ceshi&i;
set liushui.shouru;
if month=&i and year=2016;
proc sql;
create table ce***** as
select a.id,a.bank,a.month as month&i,a.money as money&i,a.day as day&i,b.id,b.bank,b.month,b.money,b.key
from ceshi&i as a inner join ceshif
on a.id=b.id a.bank=b.bank;
quit;
data ceshif;
set ce*****;
if money=money&i then mark&i=1;
else if abs(money/money&i-1)>0.05 or abs(day-day&i)>3 then delete;
keep key id bank money month day mark&i;
run;
%end;
%mend;
%b;
代码如上,宏录入没问题,但是无法运行,是因为有proc sql的缘故吗