我有一个数据集,其中date_occur是MMDDYY10格式(看起来像10/23/2014)。我希望2017财年的所有日期都是10/01 / 2016-09 / 30/2017。以下代码由于某种原因不起作用。为什么!!
我没有收到任何错误或警告信息,我只是得到一张空桌子。
提前致谢
data fy17;
set y16_17;
where date_occur between 10/01/2016 and 09/30/2017;
run;
日志说: 注意:从数据集WORK.Y16_17中读取了0个观测值。 WHERE(date_occur> = 0.0001487357和date_occur< = 0.0049603175);
我认为SAS不理解date_occur是mmddyy10格式。互联网的代码如
where date_occur between '10/01/2016'd and '09/30/2017'd;
我尝试了这个并且它也没有用。
答案 0 :(得分:2)
您的“日期”被解释为数字表达式,表格中的所有日期值都不在结果范围内。请改用日期文字:
data fy17;
set y16_17;
where date_occur between '01oct2016'd and '30sep2017'd;
run;
指定日期文字时,您只能使用date.
格式(ddmmmyyyy
/ ddmmmyy
)。