%macro kbmerge(inds1, inds2, byvar, outds); proc sort data=&inds1 nothreads; by &byvar; proc sort data=&inds2 nothreads; by &byvar; data &outds; merge &inds1(in=a) &inds2(in=b); by &byvar; if a or b; in&inds1=a; in&inds2=b; run; %mend;
%macro kfmerge(inds1, inds2, byvar, outds); proc sort data=&inds1 nothreads; by &byvar; proc sort data=&inds2 nothreads; by &byvar; data &outds; merge &inds1(in=a) &inds2(in=b); by &byvar; if a; run; %mend;
%macro rmsecmerge(inds1, inds2, byvar, outds); proc sort data=&inds1 nothreads; by &byvar; proc sort data=&inds2 nothreads; by &byvar; data &outds; merge &inds1(in=a) &inds2(in=b); by &byvar; if not b; run; %mend;