data a; input id mth_year categ_var1 $ categ_var2 $; cards; 1 201301 . abc 1 201302 . ghi 1 201303 def ghi 2 201301 xyz jkl 2 201302 def jkl ; run; proc sql; create table b as select min(mth_year) as yr, * from a where categ_var1 is not null group by id having calculated yr = mth_year; quit; proc sql; create table c as select distinct id, categ_var2 from a where categ_var2 = 'abc'; quit; proc sql; create table d as select b.id, b.categ_var1, case when c.id is null then 0 else 1 end as categ_var2_id from b left join c on b.id = c.id ; quit;
... View more