data detail; input Date date9. AreaCode PhoneNum $8. ToAcronym $ FromAcronym $ SecretCode; format Date YYMMDD10.; datalines; 21DEC2006 407 312-9088 AFAIK DQMOT 103 21DEC2006 407 324-6674 BEG TU 101 21DEC2006 407 312-9088 BFN SYS 101 21DEC2006 407 312-9088 BTDT IHU 102 22DEC2006 407 312-9088 C&G AFAIK 103 ; run; data lookup_1; input Acronym $ Meaning $30.; datalines; AFAIK as far as I know AFK away from keyboard ASAP as soon as possible BEG big evil grin BFN bye for now BTDT been there, done that DQMOT don't quote me on this. IHU i hate you SYS see you soon ; run; data results; if 0 then set lookup_1; drop Acronym Meaning rc; if _n_ = 1 then do; declare hash hashLookup(dataset:'lookup_1'); hashLookup.definekey('Acronym'); hashLookup.definedata('Meaning'); hashLookup.definedone(); call missing(Acronym, Meaning); end; set detail; rc=hashLookup.find(key:ToAcronym); if rc=0 then ToMeaning = Meaning; run;