2014-11-12 4 views
-2

Я пойти следующий вопрос:знать имена таблиц и делает подсчет

Как бы вы получить имя таблицы и подсчет этой таблицы с SAS?

Если я использую Oracle SQL, я бы генерировать metaquery и намотать его, с запросом, как показано ниже:

spool test.sql 
SELECT 'select '||''''||table_name||''''||',count(*) from '||table_name FROM all_tables; 
spool off 

После золотника, я бы запустить весь запрос, который дал бы мне запросы, как показано ниже

SELECT 'table_called_toto',COUNT(*) FROM table_called_toto; 

Однажды бежал, я бы таких результатов, что один:

table_called_toto,20 

делает someth аналогичные существуют в SAS? И если да, как мне это сделать?

+1

Я пробовал поиск по Google - список имен таблиц в sas, и 2 из 5 лучших результатов ответили на этот вопрос. =/ –

+0

Привет, Роберт, список имен таблиц и счетчиков. «Чтобы иметь имена таблиц плюс счет в sas'. Мы находимся между людьми, которые знают молчаливые правила, и я думаю, что доверие не было нарушением. –

+1

@ AndyK То, что Роб правильно указывает на то, что на этот вопрос легко ответить самостоятельно. Вам не нужно было спрашивать об этом здесь. – Joe

ответ

1

Я думаю, что вы ищете макропрограммирование. Но вы также можете запросить sashelp.vtable, который содержит метаданные о таблицах SAS. Если бы у вас был список таблиц, я бы сделал примерно следующее:

proc sql; 
select libname, memname, nobs 
from sashelp.vtable 
where upcase(libname)='WORK' and upcase(memname) in (Select upcase(table_name) from all_tables); 
quit; 

Обратите внимание, что сравнения чувствительны к регистру.

+0

Привет, Риз, да! Это то, что я искал. Благодарю. –

Смежные вопросы