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

Hello how to use conditions on two columns with select when statements:

I am not getting any errors, but my results are not correct. I want to set the new variable x based on the col1 and col2 conditions using select when only. Please find my code below.

data test;

input col1 $ col2;

length x $10;

datalines;

A 1

A 1

A 2

A 3

B 1

B 2

B 3

C 1

C 1

;;

run;

data test2;

set test;

select (col1);

  when (A) do;

     if col2 = 1 then do;

     x= 'test_A1';

     end;

  when (B) do;

      if col2 = 3; then do;

     x = 'test_B3 ';

       end;

otherwise put 'other';

end;

end;

Thanks.


1 ACCEPTED SOLUTION

Accepted Solutions
Peter_C
Rhodochrosite | Level 12


something like

select ;

  when (col1='A' and col2 = 1 ) do;

          x= 'test_A1';

     end;

  when (col1='B' and col2 = 3 ) do;

          x = 'test_B3 ';

       end;

otherwise put 'other';

end;

View solution in original post

2 REPLIES 2
Peter_C
Rhodochrosite | Level 12


something like

select ;

  when (col1='A' and col2 = 1 ) do;

          x= 'test_A1';

     end;

  when (col1='B' and col2 = 3 ) do;

          x = 'test_B3 ';

       end;

otherwise put 'other';

end;

sas121987
Calcite | Level 5

Thanks Peter, It worked.

sas-innovate-2026-white.png



April 27 – 30 | Gaylord Texan | Grapevine, Texas

Registration is open

Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and lock in 2025 pricing—just $495!

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
  • 1332 views
  • 0 likes
  • 2 in conversation