在SAS发现上周日和每周向后走4周

Ale*_*der 1 date sas

我有一份每周四运行的SAS工作,但有时需要在周三,也许周二晚上运行.该工作以4周的间隔收集一些数据直到最接近的星期日.例如,今天我们有19M2015,我需要数据直到2015年5月15日.

data get_some_data;
  set all_the_data;
  where date >= '16Feb2015' and date <= '15Mar2015';
run;
Run Code Online (Sandbox Code Playgroud)

下周我还要手动更改日期参数

data get_some_data;
  set all_the_data;
  where date >= '23Feb2015' and date <= '22Mar2015';
run;
Run Code Online (Sandbox Code Playgroud)

无论如何,我可以自动化这个?

Lon*_*ish 5

我将扩展来自@ user667489的建议,因为它可能需要你一段时间来解决它.关键是使用week时间间隔,默认情况下在星期日开始(您可以使用移位索引更改此值,请阅读此内容以获取更多详细信息)

所以你的查询只需要:

where intnx('week',today(),-4)<date<=intnx('week',today(),0);
Run Code Online (Sandbox Code Playgroud)