data ex;
input usr1 $ usr2 $;
cards;
u1 u2
u2 u3
u1 u3
;
run;
data ex1;
input usr $ fruits $;
cards;
u1 apple
u1 banana
u2 apple
u3 banana
;
run;
proc sql;
create table ex2 as
select usr1,usr2,sum(f1=f2) from
(select c.*,b.fruits as f2 from
(select a.*,b.fruits as f1 from ex a inner join ex1 b
on a.usr1=b.usr ) as c inner join ex1 b on c.usr2=b.usr)
group by usr1,usr2;
quit;