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.
Join us for SAS Innovate April 16-19 at the Aria in Las Vegas. Bring the team and save big with our group pricing for a limited time only.
Pre-conference courses and tutorials are filling up fast and are always a sellout. Register today to reserve your seat.
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.