How do I display date in the YYYYMMDD format? Like 1960/02/21.
If you want to continue to use the same variable name, you need to output the result as character. For example:
datevar = put ( input(datevar, mmddyy10.), yymmdds10. );
The yymmdd format is what you are looking for.
data test;
datevar = date();
format datevar yymmdd10.;
run;
I can't test it right now, but you should be able to control the separator as well:
format datevar yymmdds10.;
format datevar yymmddd10.;
s = slash
d = dash
@Astounding wrote:
I can't test it right now, but you should be able to control the separator as well:
format datevar yymmdds10.;
format datevar yymmddd10.;
s = slash
d = dash
The default separator for the YYMMDD format is the dash or hyphen.
Possible separators for the extended version of the format (as @Astounding posted) are
n no separator
b blank
d dash
s slash
p period
c colon
What about if my date is a character variable and not numeric? For example: I have 11/5/1969 read in as character and I need to change it to the YYYYMMDD format.
Depending on the format, do
datvar = input(stringvar,ddmmyy10.);
or
datvar = input(stringvar,mmddyy10.);
If you want to continue to use the same variable name, you need to output the result as character. For example:
datevar = put ( input(datevar, mmddyy10.), yymmdds10. );
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!
Ready to level-up your skills? Choose your own adventure.