Hi, my database need modify existing variables in the Case When syntax for EG.
However, I cannot create enough room for condition my new variables:
For instance, I can use sas base
data final;
set work.QUERY_FOR_JAN2016_SAS7BDAT1_0003;
if whichone = 'januaryppc' then do;
PRE_MRC = MRC_PRE_JAN;
Post_MRC = MRC_POST_JAN;
pp_from = from_pp_JAN;
pp_to = to_pp_JAN;
changes = changejan;
end;
but for EG, I really cannot do that for column changes.
Anyway SQL can do multiple column change in a macro statement maybe?
This is a typical case where data step logic is more efficient than SQL, at least from a coding/maintenance point of view.
So if you already have a data step, use that in EG. And then use SQL/Query Builder for other steps.
And you could perhaps use a macro here, but I can't see the benefit. The code/task will be less readable, and harder to maintain.
In SQL, either query builder or code, you need a case statement for EACH variable change you want to make.
Could you set the month into a macro variable, and then use something like this?
...
select
MRC_PRE_&MTH. as PRE_MRC,
MRC_POST_&MTH. as Post_MRC,
from_pp_&MTH. as pp_from,
to_pp_&MTH. as pp_to,
change&MTH. as changes
...
Tom
This is a typical case where data step logic is more efficient than SQL, at least from a coding/maintenance point of view.
So if you already have a data step, use that in EG. And then use SQL/Query Builder for other steps.
And you could perhaps use a macro here, but I can't see the benefit. The code/task will be less readable, and harder to maintain.
Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!
What’s the difference between SAS Enterprise Guide and SAS Studio? How are they similar? Just ask SAS’ Danny Modlin.
Find more tutorials on the SAS Users YouTube channel.