I have defined one prompt named ‘whichcolumn’. Based on the length of the value the user enters into the prompt I need to determine which column to use in my ‘where’ clause.
Is this possible to build as part of a where clause? If not, are there any other suggestions as to how I can accomplish this?
My table columns:
Column2 Column2Desc Column3 Column3Desc Column4 Column4Desc
Example:
If the user enters ‘72’, the length is 2 so I want to use Column2 in my where clause.
If the user enters ‘721’, the length is 3 so I want to use Column3 in my where clause.
If the user enters ‘7211’, the length is 4 so I want to use Column4 in my where clause.
Thanks for any assistance!
Since you mentioned 'prompt', this question maybe more suitable for Enterprise Guide sub-forum, where you are more likely to get help from EG experts. Something along the line of following simple implementation may work for you, try it in your stored process.
%let var=column%length(&seq); /*assume seq is your prompt name*/
proc sql;
select blah blah from blah where &var blah
;
quit;
Of course you can use it as a compound one step in your Proc SQL, I was trying to set up the flow chart for you, in case you need more flexibility.
Since you mentioned 'prompt', this question maybe more suitable for Enterprise Guide sub-forum, where you are more likely to get help from EG experts. Something along the line of following simple implementation may work for you, try it in your stored process.
%let var=column%length(&seq); /*assume seq is your prompt name*/
proc sql;
select blah blah from blah where &var blah
;
quit;
Of course you can use it as a compound one step in your Proc SQL, I was trying to set up the flow chart for you, in case you need more flexibility.
Thanks so much for your assistance!
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.