BookmarkSubscribeRSS Feed
R_Win
Calcite | Level 5
Hi i am having a date i should minus it from the todays date(sysdate)

Data a;
input date ddmmyy10.;
cards;
05/02/2011
run;

for examples sysdate is 10/02/2011 then out put sholud be date=5 it should be automatic as the systemdate but not with today function
3 REPLIES 3
Olivier
Pyrite | Level 9
Hi.
Since SAS dates are stored as number of days (beginning on day 0 which is january 1st, 1960), what you want to do is basically a substraction.
The SAS function called TODAY() or DATE() -- both give the same result -- will deliver the exact date every day.
[pre]Data a;
input date ddmmyy10.;
gap = TODAY() - date ;
cards;
05/02/2011
run;[/pre]
R_Win
Calcite | Level 5
Thanks for your reply but i want it my macro sysdate.
sbb
Lapis Lazuli | Level 10 sbb
Lapis Lazuli | Level 10
Yes, you can code/use the SAS-maintained macro variable &SYSDATE using a date-constant technique:

DATA _NULL_;
TODAY = "&SYSDATE"D;
PUT TODAY= DATE9.;
RUN;

Do consider that the SAS function TODAY() and using &SYSDATE as shown above are equivalent.

Scott Barry
SBBWorks, Inc.

Suggested Google advanced search argument, this topic / post:

data step sysdate constant site:sas.com

hackathon24-white-horiz.png

The 2025 SAS Hackathon has begun!

It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.

Latest Updates

What is Bayesian Analysis?

Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.

Find more tutorials on the SAS Users YouTube channel.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 3 replies
  • 1382 views
  • 0 likes
  • 3 in conversation