Я не могу решить, решить одну проблему.Цитирование через столы и их соединение в SAS
У меня есть неизвестное количество таблиц в одной библиотеке SAS. Я хочу сделать цикл, который проходит через них и «UNION ALL» эти таблицы.
Столы предварительно проверены и имеют одинаковую структуру. Эти таблицы включают в себя историзированные данные, поэтому он должен быть всем Союзом. Я пробовал следующий скрипт, но он ищет все возможности, но не делает UNION ALL.
Я ценю любые идеи для решения этой проблемы.
%macro union_tables(table_name, last_extract);
%do i=1 %to &last_extract.;
select * from data.&table_name&i
union all
%end;
select * from data.&table_name&i
%mend;
proc sql;
create table Full_history as
%union_tables(Table_,1216);
quit;
Заранее спасибо.
Вы делаете «союз все» на 1216 таблицах? Какие сообщения об ошибках вы получаете? Можете ли вы предоставить [воспроизводимый пример] (http://www.stackoverflow.com/help/mcve)? – user667489
1216 - это месяц и год, который идентифицирует каждую таблицу и отличается для каждой таблицы. – Noza
Ошибка: Файл Table_1 не существует. Ужасно: Файл Table_2 не существует. Ошибка: Файл Table_3 не существует. ......и т. д. и окончание объединения не завершено. – Noza