So I am trying to make a where statement that is dynamic however I am not 100% sure how to place a zero in front of the system month if it a single digit (i.e. 1, 2, 3, 4).
%let sysmonth= %sysfunc(month("&sysdate"d)); %let sysyear= %sysfunc(year("&sysdate"d)); where Year in ("&sysyear") and Month in ("&sysmonth")
I wasn't sure if you could do a CAT type function or not within the sysfunc
Are you asking for this?
%let sysmonth= %sysfunc(month("&sysdate"d),z2.);
%let sysyear= %sysfunc(year("&sysdate"d));
%put &=sysmonth &=sysyear;
Are you asking for this?
%let sysmonth= %sysfunc(month("&sysdate"d),z2.);
%let sysyear= %sysfunc(year("&sysdate"d));
%put &=sysmonth &=sysyear;
@IgawaKei29 wrote:
Thanks so much! I kept trying to put something in front of the %sysfunc. I will be adding this one to my code library.
Don't bother. Just remember how to use the Z format.
SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!
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.