What is the most efficient to create a dataset that has the names of all datasets in a given library?
Querying dictionary.tables
An example:
proc sql;
create table WorkDatasets as
select memname
from dictionary.tables
where libname='WORK'
;
QUIT;
Sometimes dictionary tables perform slowly because there are lots of libraries and tables and/or some libraries point to external databases. PROC DATASETS can be a lot faster. This example uses ODS to create a dataset CONTENTS containing a list of all tables in the WORK library.
proc datasets library = WORK nolist;
contents data = _ALL_ nods;
ods output members = contents (rename = (name = memname));
run;
ods output close;
quit;
It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.