This should work:
data have;
infile datalines dlm=",";
length Test_place $100 Method $20;
input Test_place $ method $ capacity;
datalines;
Test place Toronto,Normal,599
Test place Toronto,Close contact,23
Test place Copenhagen,Normal,699
Test place Copenhagen,Close contact,23
Test Place Thisted,Normal,159
Test Place Thisted,Close contact,15
;
run;
proc sql;
create table want1 as
select have.*, flag
from have as t1 left join (select test_place, 1 as flag
from have
where method="Normal" and capacity ge 400) as t2
on t1.test_place=t2.test_place;
quit;
data over under;
set want1;
if flag=1 then output over;
else output under;
drop flag;
run;
proc sql;
drop table want1;
run;
... View more