使用 'Where' 函数将数据读入 SAS

Reading in Data into SAS using 'Where' function

出于某种原因,我无法正确读取数据。我希望能够读取大型数据集,但只能读取特定日期,例如 2004 年 1 月至 2004 年 2 月。我的代码如下:

DATA Work.sales_fact;
SET Work.sales_fact_subset;
WHERE '01JAN2004'd <= Order_Date <= '14FEB2004'd;
RUN;

PROC PRINT;
RUN;

我做错了什么?

这是这个工作的一个例子.. 请检查您的数据集。

data want;
set sashelp.rent;
where "01feb1999"d <= date <= "02feb2003"d;
run;

如果您的 table 姓名和日期结构正确,则您的查询是正确的。这是我对正确结果集所做的示例。

 data inputs;
       input Date1 date9. ;
       Format date1 date9.;
       cards;
01JAN2004 
02FEB2004
03MAR2004
04JUN2004
05JUL2004 
    ;



DATA inputss;
SET inputs;
WHERE '01JAN2004'd <= Date1 <= '14FEB2004'd;
RUN;

PROC PRINT;
RUN;

我想你已经 DATASET 切换了。 DATA 是您要创建的内容。 SET 是数据的来源。

DATA Work.sales_fact_subset ;
SET Work.sales_fact;
WHERE '01JAN2004'd <= Order_Date <= '14FEB2004'd;
RUN;

PROC PRINT data=Work.sales_fact_subset;
RUN;