BookmarkSubscribeRSS Feed
Avenue
Calcite | Level 5

Hi Guys,

How does one convert SAS date9 to character yyyymmdd:

2013DEC02 to 20131202

Thanks

1 REPLY 1
Patrick
Opal | Level 21

"2013DEC02" is not a string in date9 format.

Are you dealing with a SAS date value (=numeric variable containing a number representing the number of days since 1 january 1960) or are you dealing with a string?

Should the result be a string or is this simply about applying a date format to a SAS date value?

Below code gives you examples for both cases.

data demo;

  DT_String_In='2013DEC02';

  SAS_DT_Value_no_date_format=input(DT_String_In,anydtdte.);

  format SAS_DT_Value_with_date_format yymmddn.;

  SAS_DT_Value_with_date_format=input(DT_String_In,anydtdte.);

  DT_String_Out=put(SAS_DT_Value_no_date_format,yymmddn.);

  output;

  DT_String_Out=put(SAS_DT_Value_with_date_format,yymmddn.);

  output;

run;

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

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
  • 1 reply
  • 11853 views
  • 0 likes
  • 2 in conversation