我希望每个每日报告仅显示上次报告运行后扫描的文档。我不希望报告是以前所有文件的总计。
PROC SQL;
CREATE TABLE ARG_REPORT
AS SELECT
VID,
LAST_NAME,
FIRST_NAME,
MI
FROM WORK.FINAL_RESULTS2;QUIT;
ARG_REPORT是输出,但是给出了数据中的所有变量。只需要今天的扫描数据。我能做什么?谢谢!
答案 0 :(得分:0)
您是否有报告或扫描日期的专栏?如果是这样,我相信你可以这样做:
BEGIN
CREATE TABLE ARG_REPORT
AS SELECT
VID,
LAST_NAME,
FIRST_NAME,
MI
FROM WORK.FINAL_RESULTS2
WHERE REPORT_DATE >= GETDATE();
END
答案 1 :(得分:0)
您需要以某种方式存储已报告的数据。您可以将其存储在一个表格中(您可以拥有一个'运行总计'报表,这确实是运行总计,当您生成报表时,只需通过加入该表获取新记录)。
如果VID
字段是您可以用作限制的东西(仅选择大于上一个报告中最大VID的VID),那么您可以将其存储在表中(或宏变量中) - 例如,如果上一个报告可用于输入,则可以将其读入,通过call symput
将最大的VID读入宏变量,然后以此方式限制查询。)
答案 2 :(得分:0)
我的报告显示为
PROC EXPORT DATA= WORK.ARG_REPORT
OUTFILE= "/dwdata/sas_data/ARG_REPORT_&numdate..csv" REPLACE;run;
有没有什么方法可以比较前一天的结果。 ARG_REPORT_& numdate-1,就像这样。 ?