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;
SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!
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.
Ready to level-up your skills? Choose your own adventure.