BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
bobbyc
Fluorite | Level 6

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 ?

1 ACCEPTED SOLUTION

Accepted Solutions
RW9
Diamond | Level 26 RW9
Diamond | Level 26

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;

View solution in original post

2 REPLIES 2
RW9
Diamond | Level 26 RW9
Diamond | Level 26

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;
Reeza
Super User

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.

SAS Innovate 2025: Register Now

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!

How to Concatenate Values

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.

SAS Training: Just a Click Away

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

Browse our catalog!

Discussion stats
  • 2 replies
  • 17778 views
  • 4 likes
  • 3 in conversation