SAS宏来自PROC SQL日期错误
您好,我正在尝试将数据集中的特定日期放入宏中,以便在数据步骤中使用它,但我总是得到1960年1月1日,而不是我想要的日期 我的代码是下一个:SAS宏来自PROC SQL日期错误,sas,proc,Sas,Proc,您好,我正在尝试将数据集中的特定日期放入宏中,以便在数据步骤中使用它,但我总是得到1960年1月1日,而不是我想要的日期 我的代码是下一个: proc sql noprint ; select WEEK_START into :WEEK_START from date_table WHERE FW= 5; quit; %let start=&WEEK_START; %LET TODAY= T
proc sql noprint ;
select WEEK_START
into :WEEK_START
from date_table
WHERE FW= 5;
quit;
%let start=&WEEK_START;
%LET TODAY= TODAY();
我这样做是为了能看到我想要的日期:
DATA TEMP;
DATE =&TODAY;
DATE1= &start;
FORMAT DATE DATE1 datE11.;
RUN;
结果是:
日期:2014年10月6日
日期1:1960年1月1日
proc sql noprint ;
select today()-1 as WEEK_START
into :WEEK_START
from maps.africa;
quit;
%let start=&WEEK_START;
%LET TODAY= TODAY();
DATA TEMP;
DATE =&TODAY;
DATE1= &start;
FORMAT DATE DATE1 datE11.;
RUN;
当我运行这个程序时,两者都正确填充
此外,示例中Date1的值是数值0的日期值。看起来您的原始数据填充不正确。您的周开始日期实际上是一个日期时间变量。尝试使用dtdate11。改为格式化。