To get the number of observations in multiple tables just use PROC CONTENTS or DICTIONARY.TABLES.
proc sql noprint ;
create table counts as
select memname,nlobs
from dictionary.tables
where libname = 'NACO'
and upcase(memname) like 'NACO_%'
order by 1
;
quit;
I am trying to get record count form updated datasets using naming convention financial_account_YYYYMM that range from 201212 back to 200706. The datasets are stored in the following path: '/sas/data/dds_test/
The below code is not working for me and I am new to do loops> any help would be appreciated...
LIBNAME DDSTEST '/sas/data/dds_test/
proc sql;
create table rl_668_SUM
(
MNTH num,
CNT num
);
quit;
data _null_;
do i=200706 to 201212;
call execute('proc sql;
insert into rl_668_SUM
set MNTH='||strip(put(i,best.))||',
CNT = (select count(1) from DDSTEST.Financial_account_'||strip(put(I,best.)||');
quit;');
end;
run;
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.