Hi all I'm new to SAS and I'm just wondering why I am getting the error below:
ERROR: Result of WHEN clause 3 is not the same data type as the preceding results
Here is my code
case
WHEN Year = 1617 and state in ('NSW') and Surgical_Specialty = '12' then Surgical_Specialty = '11'
WHEN Year = 1617 and t1.state in ('NT') and Surgical_Specialty in ('01','1') then Surgical_Specialty = '11'
ELSE Surgical_Specialty end as Surgical_Specialty,
The Year column is in Numeric
The Surgical_Specialty and STATE is in Character
Not sure why I cannot use year and STATE and surgical specialty in one when statement
Thankyou
Use the correct syntax.
Your 2 first when clauses return a Boolean (the result of the test Surgical_Specialty = '11')
CASE
WHEN Year = 1617 and state in ('NSW') and Surgical_Specialty = '12' then '11'
WHEN Year = 1617 and state in ('NT ') and Surgical_Specialty in ('01','1') then '11'
ELSE Surgical_Specialty END as Surgical_Specialty
Use the correct syntax.
Your 2 first when clauses return a Boolean (the result of the test Surgical_Specialty = '11')
CASE
WHEN Year = 1617 and state in ('NSW') and Surgical_Specialty = '12' then '11'
WHEN Year = 1617 and state in ('NT ') and Surgical_Specialty in ('01','1') then '11'
ELSE Surgical_Specialty END as Surgical_Specialty
Thank you so mcuh!
Good news: We've extended SAS Hackathon registration until Sept. 12, so you still have time to be part of our biggest event yet – our five-year anniversary!
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.