检查是否对sas数据集进行了排序

kir*_*ira 0 sas

我有一个包含100个sas数据集的文件夹.我需要创建一个新表,它有两列(数据集名称,已排序/未排序).

我知道proc内容可以用来检查排序的条件,但有没有办法以编程方式对所有100个数据集进行检查并将结果返回到一个表中?

Joe*_*Joe 5

使用DICTIONARY.TABLES,这很简单.

proc sql;
  create table sorted_tables as
    select memname, sorttype
    from dictionary.tables
    where libname='MYLIB'
  ;
quit;
Run Code Online (Sandbox Code Playgroud)

这基本上是PROC CONTENTS的程序化版本,可让您访问相同的信息.如果您需要更多信息,请参阅Kirk Lafler关于该主题的优秀论文.

"S"表示已排序,"SK"表示已排序nodupkey.可能还有其他价值观,我不确定所有这些价值观.