Date sas日期-将今天()转换为yyyymmdd格式

Date sas日期-将今天()转换为yyyymmdd格式,date,format,sas,Date,Format,Sas,如何将SAS日期(如“2009年7月30日”d转换为YYYYMMDD格式(如20090730) 例如: data _null_; format test ?????; test=today(); put test=; run; 会在日志中给我“test=20090730”…以下是我在宏中的操作方式,但肯定有一种格式 %let today=%sysfunc(compress(%sysfunc(today(),yymmddd10.),'-')); 它很奇怪-信息yymmdd8。给出Y

如何将SAS日期(如
“2009年7月30日”d
转换为
YYYYMMDD
格式(如20090730)

例如:

data _null_;
  format test ?????;
  test=today();
  put test=;
run;

会在日志中给我“test=20090730”…

以下是我在宏中的操作方式,但肯定有一种格式

%let today=%sysfunc(compress(%sysfunc(today(),yymmddd10.),'-'));
它很奇怪-信息yymmdd8。给出YYYYMMDD结果,而格式为yymmdd8。给出YY-MM-DD结果

data _null_;
    format test yymmddn8.;
    test=today();
    put test=;
run;

您希望使用yymmddn8格式。“n”表示没有分隔符


根据,您可以为空白指定B,为冒号指定C,为破折号指定D,为无分隔符指定N,为句点指定p,或为斜杠指定S。

当您在索引选项卡中输入“日期”,然后选择“日期和时间格式”时,您可以在“帮助”选项卡中看到所有日期和时间格式。

有一个也可以做到这一点

%let today=%sysfunc(today(),yymmddn8.);
%put &today.;
下面链接上的所有内容


嗯。也许我做错了什么,但适合我的格式是:格式测试yymmddn8。;谢谢@pinegulf,我更新了答案。只花了8年就有人发现了!
%let today=%sysfunc(today(),yymmddn8.);
%put &today.;