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;

SAS Innovate 2025: Save the Date

 SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!

Save the date!

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
  • 11597 views
  • 0 likes
  • 2 in conversation