Why not convert the two variables to numeric in the SQL call? proc sql;
create table combo as
select
dataset2.*,
dataset1.var1,
dataset1.var2
from
dataset2 left join dataset1
on input(dataset2.id,best6.) = input(left(dataset1.id),best12.)
;
quit;
run; And be careful with those SQL aliases. Everybody uses them, but they very often make the code harder to read - in this case dataset1 was mapped to "b" and dataset2 to "a", very confusing, IMO. It is not that hard to use a change command to get rid of the aliases in the final code, and it normally makes everything much easier to read.
... View more