首页 > 解决方案 > 我可以在 PROC CONTENTS 的数据集名称中使用通配符吗?

问题描述

在 SAS 服务器上,我们有一个包含数千个数据集的库。我想对其中一个子集的内容进行编目,所有这些内容的名称都以“prov”开头。我可以使用通配符来指定吗?

我试过了:

PROC CONTENTS DATA=library.prov*;
RUN;

但这只会产生带有此错误消息的日志:

ERROR: File LIBRARY.PROV.DATA does not exist.

我也尝试了 library.prov%,这给出了同样的错误。

有超过 100 个以“prov”开头的数据集,所以我真的不想一次做一个。有任何想法吗?

标签: sas

解决方案


根据您希望 CONTENTS 过程产生的信息,您可以只使用 DICTIONARY 元数据视图。

proc sql ;
  create table want as 
  select *
  from dictionary.columns
  where libname = 'LIBREF'
    and memname like 'PROV%'
  ;
quit;

推荐阅读