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


Hi,

I have some code that runs fine but when i add in the case statement on Proc SQL it 'falls over'. Can anyone please advise where I am going wrong with the complete statement?

PROC SQL;
create table work.red as
select
num,
month_date,
arrs,
remaining_months, 
platform,
valuation,
Type,

count(*) as count,
avg (tv) ,
avg (bal),

case when 
remaining_months <= 1 then 'End'
else if Remaining_months <= 12 then 'End OP'
else if arrs not in '1' then 'Ars' else 'Rege' end as Red_son

from
sun.sunny

where
platform = 'O'
and Arrs not in ('L4','L5','L6')

group by

num,

month_date

arrs

remaining_months 

platform

valuation

Type

quit;

1 ACCEPTED SOLUTION

Accepted Solutions
stat_sas
Ammonite | Level 13

Try modifying case statement syntax in above.

case

when  remaining_months <= 1 then 'End'

when Remaining_months <= 12 then 'End OP'

when arrs ne '1' then 'Ars'

else 'Rege' end as Red_son

View solution in original post

2 REPLIES 2
stat_sas
Ammonite | Level 13

Try modifying case statement syntax in above.

case

when  remaining_months <= 1 then 'End'

when Remaining_months <= 12 then 'End OP'

when arrs ne '1' then 'Ars'

else 'Rege' end as Red_son

RW9
Diamond | Level 26 RW9
Diamond | Level 26

Hi,

you are mixing SAS syntax and SQL there:

case      when     remaining_months <= 1 then 'End'
              when     Remaining_months <= 12 then 'End OP'
              when     arrs not in '1' then 'Ars'

              else       'Rege' end as Red_son

The syntax is:

case     when  [condition] then [result]

               else [fallout response] end

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
  • 1333 views
  • 0 likes
  • 3 in conversation