Tom, thank you very much. When I run the second way, I get the following error message: ERROR: BY variables are not properly sorted on data set WORK.SET1. The code I use: Data set1; infile datalines delimiter=','; input city1 $ city2 $ pass; datalines; chi , det , 3 chi , ks , 4 la , dc , 5 la , chi , 6 ; run; Data set2; infile datalines delimiter=','; input city1 $ city2 $ pass; datalines; chi , det , 13 chi , ks , 14 la , dc , 15 la , chi , 16 la , ho , 20 ; run; data want ; any1=0; any2=0; do until (last.city2); set set1(in=in1) set2(in=in2); by city1 city2; if in1 then any1=1; if in2 then any2=1; end; length source dsname $41; do until (last.city2); set set1 set2 indsname=dsname; by city1 city2; source=dsname; if any1 and any2 then output; end; run; Thanks!
... View more