data one;
input names & $50. data $20.;
cards;
ABLIM1 ABLIM KIAA0059 LIMAB1 data1
AK3 AK3L1 AK6 AKL3L data2
AK4 AK3 AK3L1 data3
ADD3 ADDL data4
PHYKPL AGXT2L2 PP9286 data5
;
data two;
input name $ more_data & $15.;
cards;
ABLIM more data 1
ADDL more data 2
DKG more data 3
PRWR more data 4
;
proc sql;
create table want as
select a.*,b.names,data
from two a left join one b
on b.names contains strip(a.name);
quit;