Hello
I was trying to convert variables (MP_LASTNAME and MP_FIRSTNAME) to character variables in these statements? How would I go about this? I get an error that these variables are numeric and wasnt sure how besides using a put statements would do this for me.
from outlib.MCP_QUAL as a
left join refdata.xwalk_careone_crm as b
on UPCASE(COMPRESS(strip(a.PtFirst))) = UPCASE(COMPRESS(strip(b.MP_FIRSTNAME)))
and UPCASE(COMPRESS(strip(a.PtLast))) = UPCASE(COMPRESS(strip(b.MP_LASTNAME)))
;quit;
Thank you
Rida
I am trying this but its not working still giving me an error (put(a.PtFirst,format $15.))))
MPRINT(STEP2): create table ALL_NPART as select distinct a.* ,b.MP_FIRSTNAME as _Fname format $15. ,b.MP_LASTNAME as _Lname
format $15. ,b.indv_id ,b.MP_MANAGEDPERSONID ,b.MP_BIRTHDATE as _DOB ,b.MP_zip as _zip from outlib.MCP_QUAL as a left join
refdata.xwalk_careone_crm as b on UPCASE(COMPRESS(strip(put(a.PtFirst,format $15.)))) = UPCASE(COMPRESS(strip(b.MP_FIRSTNAME))) and
UPCASE(COMPRESS(strip(put(a.PtLast,format $15.)))) = UPCASE(COMPRESS(strip(b.MP_LASTNAME))) ;
ERROR 22-322: Syntax error, expecting one of the following: a format name, ?.
You're close. You don't use the word "format" when using a format. Also, if you're converting a numeric variable to character, don't start the format name with a "$".
Here's an example of what you're trying to do:
proc sql;
create table TestTable as
select put(a.Age, 15.) as CharAge
from sashelp.class as a;
quit;
Tom
Why can't you do this without conversion:
on a.PtFirst = b.MP_FIRSTNAME
and a.PtLast = b.MP_LASTNAME;
Are you certain that the variables were created properly in the first place? It seems unusual for variables holding first and last name to be numeric.
Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!
What’s the difference between SAS Enterprise Guide and SAS Studio? How are they similar? Just ask SAS’ Danny Modlin.
Find more tutorials on the SAS Users YouTube channel.