Is this possible to do in Enterprise Guide filter? I usually do a date compare in a filter like this that works fine:
datepart(exit_date) >= '15Aug2017'd
However I would like the to set it up so the year is dynamic, something like:
'15Aug' || PUT(YEAR(Date()-181), 4.)
This code produces the correct character format I want 15Aug2017, but I can't just put a 'd' at the end to assign it as date constant for comparison. Any suggestions would be much appreciated. Thanks, Kenny.
EG 6.1
SAS 9.4
Use the input() function to convert the string to a date:
datepart(exit_date) >= input('15Aug' || PUT(YEAR(Date()-181), 4.),date9.)
Or use the intnx() function to do date calculations:
datepart(exit_date) >= intnx('year','15Aug2017'd,-181,'s');
Use the input() function to convert the string to a date:
datepart(exit_date) >= input('15Aug' || PUT(YEAR(Date()-181), 4.),date9.)
Or use the intnx() function to do date calculations:
datepart(exit_date) >= intnx('year','15Aug2017'd,-181,'s');
Thanks! That works perfectly.
It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.
Check out this tutorial series to learn how to build your own steps in SAS Studio.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.