我正在编写一个需要每天运行的程序。在程序的特定部分中,特定库中的所有数据集将附加到另一个库中的一个数据集中。
我的计划是扫描第一个库以检索最新的修改时间,然后将其与第二个库中附加数据集的上次修改时间进行比较。只有当第一个库中的最后修改日期大于第二个库中的最后修改日期时,才会执行该脚本。
我已经找到了使用PROC DATASET命令为特定数据集执行此操作的方法,但由于我的第一个库中有超过200个单独的数据集,因此我试图找到更有效的解决方案。
我还找到了以下解决方案,但我似乎无法做到(继续说该目录无法在此计算机上找到,即使我使用完全相同的路径对于LIBNAM任务):
data _null_;
infile 'dir \\path\to\my\folder\/o-d /b' pipe obs=1;
input ;
call symputx('last',_infile_);
run;
顺便说一句,我正在使用Windows系统。
答案 0 :(得分:2)
您可以使用SAS
dictionary表来查找驻留在某个库中的表格的last modified date
。
proc sql;
create table dataset_1 as select libname,memname, modate
from dictionary.tables where libname="your_library";
quit;