BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
ncsthbell
Quartz | Level 8

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!

1 ACCEPTED SOLUTION

Accepted Solutions
Haikuo
Onyx | Level 15

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. 

View solution in original post

2 REPLIES 2
Haikuo
Onyx | Level 15

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. 

sas-innovate-wordmark-2025-midnight.png

Register Today!

Join us for SAS Innovate 2025, our biggest and most exciting global event of the year, in Orlando, FL, from May 6-9. Sign up by March 14 for just $795.


Register now!

How to Concatenate Values

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.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 2 replies
  • 1006 views
  • 4 likes
  • 2 in conversation