BookmarkSubscribeRSS Feed
deleted_user
Not applicable
I am working from time to time with very large datasets and I was wondering if there is a way to fuzzy search using PROC CONTENTS or some other method to list specific fields matching one criteria or another.

Of course the fallback way is to just do a CTRL-F but that is really inefficient when you have dataset with two thousand variables.

TX
1 REPLY 1
Cynthia_sas
Diamond | Level 26
Hi:
Do you mean something like this:
[pre]
proc sql;
create table work.varlist as
select libname, memname, name, type, label, format
from dictionary.columns
where upcase(libname) = 'SASHELP' and
upcase(memname) = 'SHOES' and
name contains 'ry';
quit;

proc print data=work.varlist;
title 'Variables from SASHELP.SHOES that contain the string "ry"';
run;
[/pre]
and the output from the job is:
[pre]
Variables from SASHELP.SHOES that contain the string "ry"

Obs libname memname name type label format

1 SASHELP SHOES Subsidiary char
2 SASHELP SHOES Inventory num Total Inventory DOLLAR12.

[/pre]

In this example, the search is for something about the variable NAME as the selection criteria.
On the other hand, you may actually want to find something about a variable value using a search -- which would require reading the actual file itself instead of dictionary.columns.

cynthia

Catch up on SAS Innovate 2026

Dive into keynotes, announcements and breakthroughs on demand.

Explore Now →
How to Concatenate Values

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.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 1 reply
  • 1638 views
  • 0 likes
  • 2 in conversation