Hello
I am attempting to query all records from a table where VQueue ends with .CT
Help please.
proc sql;
create table Queue as
select *
from hierarchy
WHERE VQueue = '*.CT';
quit;
Hi:
SAS has a lot of string processing functions (such as FIND, FINDW, INDEX, INDEXC, etc) and Perl Regular Expressions which might work for you. It also might be that a simple LIKE or CONTAINS operator might work for you.
For example, this PROC PRINT shows the use of a WHERE clause using the LIKE operator. With the LIKE operator, the underscore (_) is a wildcard for one character and the percent sign (%) is a wildcard for more than one character.
See "Syntax of WHERE Expression" in the SAS documentation.
cynthia
data words;
infile datalines;
input vqueue $;
return;
datalines;
CTXYZ
XYZ.CT
ABCTG
RS.CT
;
run;
proc print data=words;
where VQueue like '%.CT';
title 'Search for %.CT - where % represents any characters before .CT';
run;
proc print data=words;
title 'Search for __XYZ -- 2 underscores represent any 2 characters before XYZ';
where VQueue like '__XYZ';
run;
Hi:
SAS has a lot of string processing functions (such as FIND, FINDW, INDEX, INDEXC, etc) and Perl Regular Expressions which might work for you. It also might be that a simple LIKE or CONTAINS operator might work for you.
For example, this PROC PRINT shows the use of a WHERE clause using the LIKE operator. With the LIKE operator, the underscore (_) is a wildcard for one character and the percent sign (%) is a wildcard for more than one character.
See "Syntax of WHERE Expression" in the SAS documentation.
cynthia
data words;
infile datalines;
input vqueue $;
return;
datalines;
CTXYZ
XYZ.CT
ABCTG
RS.CT
;
run;
proc print data=words;
where VQueue like '%.CT';
title 'Search for %.CT - where % represents any characters before .CT';
run;
proc print data=words;
title 'Search for __XYZ -- 2 underscores represent any 2 characters before XYZ';
where VQueue like '__XYZ';
run;
How can we use Wild Characters in Data Step?
I am trying to get something like.
data Apple;
Set Ball;
where upcase(trim(Column2)) like '%CAR%';
run;
But i got an error for this.
Is there any way to use this in Datastep?
data Apple;
Set Ball;
if find(upcase(trim(Column2)) , 'CAR' ) ;
run;
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 the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.