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.
April 27 – 30 | Gaylord Texan | Grapevine, Texas
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!
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.