我在SAS中有一系列表,我想列出表名为like "abc%"
的所有表及其列(即所有以字符串“abc”开头的表)
如果可能,我宁愿使用proc sql。
答案 0 :(得分:2)
正如Zfunk在评论中提到的那样,这可以通过dictionary.columns
来实现。
proc sql;
select name
from dictionary.columns
where libname='MYLIB' and memname like 'ABC%';
quit;
名称(表/ libnames)几乎总是在字典表中大写。 LIBNAME很明显,MEMNAME是表名,NAME是列名。那里有很多其他的东西,用select *
创建一个表来查看所有内容。
还存在其他有用的表格;要了解完整列表,请查看V中的SASHELP
。 SASHELP.VCOLUMN
= dictionary.columns
,除了删除V并添加s之外,其他大多数都是相同的。 ZFunk在评论中提到的Kirk Laffler's SUGI 30 paper也是调查此问题的绝佳起点。