我对SAS感到困惑。
例如
%let fdate = %sysfunc(today(),EURDFDE9.);
显示2019年6月18日
我想昨天像2019年6月17日那样演出
我尝试将-1设置为无效,但是我该如何编码?
答案 0 :(得分:1)
请注意,%sysfunc(today(),EURDFDE9.)
的结果是字符串 18JUN2019
。您不能从中减去1。但是,today()是一个数值,因此,如果您存储此值,则可以随后减去1。请注意,宏变量存储为字符串,因此即使fdate是数字字符串,您也需要%eval进行减法。
%let fdate=%sysfunc(today());
%put %sysfunc(putn(&fdate,EURDFDE9.));
%let ydate=%eval(&fdate-1);
%put %sysfunc(putn(&ydate,EURDFDE9.));