I would like extract the data like below. But it is creating table with all rows from maps.uscity instead of required records.
It looks I need to tweak the code in like operator to get only the records that has city like below.
proc sql;
create table FI_Locations as select * from maps.uscity where city like '%Atlanta%' or '%Cary%' or '%Hartford%' ;
quit;
LIKE only can handle one expression one time.
proc sql;
create table FI_Locations as select * from maps.uscity where city like '%Atlanta%' or city like '%Cary%' or city like '%Hartford%' ;
quit;
Xia Keshan
any thoughts?
Hi Babloo,
depending on your database, maybe you can use the "contains" comparator, instead of "like", then you won;t need the wildcards.
I would like to know if i can combine the below data step into one step.
proc sql;
create table FI_Locations_at as select * from maps.uscity where city contains 'Atlanta';
quit;
proc sql;
create table FI_Locations_ca as select * from maps.uscity where city contains 'Cary';
quit;
LIKE only can handle one expression one time.
proc sql;
create table FI_Locations as select * from maps.uscity where city like '%Atlanta%' or city like '%Cary%' or city like '%Hartford%' ;
quit;
Xia Keshan
.. if you need to combine your where-statement with and-statements you might prefer ..
proc sql;
create table FI_Locations as select * from maps.uscity where
(Case When city like '%Atlanta%' or
city like '%Cary%' or
city like '%Hartford%' Then 1
Else 0
End)=1;
quit;
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!
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.