Вероятно, вы захотите запросить sashelp.vtable, в котором содержатся метаданные о вашем наборе данных. Предполагая, что ваши данные находятся в библиотеке WORK и называются TABLE, следующее создает список переменных, которые заканчиваются ASK.
proc sql;
select name into :varlist separated by " "
from sashelp.vcolumn
where libname="WORK" and memname="TABLE" and upcase(name) like '%_ASK';
quit;
*To rename the variables with MID generate a rename statement;
proc sql;
select catx("=", name, tranwrd(upcase(name), "_ASK", "_MID"))
into :rename_list separated by " "
from sashelp.vcolumn
where libname="WORK" and memname="TABLE" and upcase(name) like '%_ASK';
quit;
%put &rename_list;
data want_ask;
set work.table
(keep = &varlist);
rename &rename_list;
run;
like
в PROC SQL с подстановочным знаком%
требуется одиночная цитата вместо указанной двойной кавычки. – DomPazz 11 November 2014 в 03:50