How do I convert DATE9. format to ISO8601 date format ?
I need to convert the 10JAN2011 to 2011-01-10.
Is there a way to do this ?
Well, that example, is not necessarily ISO date, it is YYYY-MM-DD foramt which is part of ISO. You would likely do it:
isodate=put(your_date9_var,yymmdd10.);
E.g.:
data tmp; a="15FEB2015"d; b=put(a,yymmdd10.); run;
Well, that example, is not necessarily ISO date, it is YYYY-MM-DD foramt which is part of ISO. You would likely do it:
isodate=put(your_date9_var,yymmdd10.);
E.g.:
data tmp; a="15FEB2015"d; b=put(a,yymmdd10.); run;
Formats only control the display of the variable.
If you need to change the format, use a format statement. This keeps your variable as a date so that you can do calculations later on, such as duration.
format variable yymmdd10.;
Otherwise, if you want a character variable use PUT() function as demonstrated in the other answer.
Registration is now open for SAS Innovate 2025 , our biggest and most exciting global event of the year! Join us in Orlando, FL, May 6-9.
Sign up by Dec. 31 to get the 2024 rate of just $495.
Register now!
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.