I have a macro with multiple quotation marks. For example,
%let animal = 'cow', 'pig', 'chicken'
I want to use the macro animal in the WHERE clause in a proc sql pass-through query. How do I do that?
I already tried bquote and str but it doesn't seem to work.
Thanks
You don't need any functions. Anywhere in the program where this would be valid syntax:
'cow', 'pig', 'chicken'
just insert &ANIMAL at that point.
Did you try it? What problem did you have?
%let animal = 'cow', 'pig', 'chicken' ;
proc sql ;
connect to oracle as mydb ..... ;
select * from connection to mydb
(select * from have
where animal in (&animal)
);
quit;
Thanks everyone. It actually works. There was something wrong with my logic in my code that made me think it wasn't working.
Don't miss out on SAS Innovate - Register now for the FREE Livestream!
Can't make it to Vegas? No problem! Watch our general sessions LIVE or on-demand starting April 17th. Hear from SAS execs, best-selling author Adam Grant, Hot Ones host Sean Evans, top tech journalist Kara Swisher, AI expert Cassie Kozyrkov, and the mind-blowing dance crew iLuminate! Plus, get access to over 20 breakout sessions.
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.