В настоящее время у меня есть файл данных содержания proc, который выглядит следующим образом:
DATA CONTENTS;
INPUT NAME $;
DATALINES;
VARA
VARB
VARC
VARD
VARE
;
RUN;
и я хочу превратить эту последнюю переменную в макропеременную, например,
PROC SQL;
SELECT NAME INTO: MACRO_VARIABLE
SEPARATED BY " "
FROM CONTENTS
WHERE VARNUM > 1
AND
WHERE NAME NOT IN:(VARA VARB)
;
QUIT;
Новое дополнение, которое я пытаюсь добавить, это
Where name not in:(VarA varB)
есть ли способ сделать это, так как мои VARA и VARB являются пользовательскими вводами со страницы моего контроллера, я не могу указать, чтобы они были разделены запятыми, поскольку они будут переменными "group_by" позже в скрипте.
EDIT:
Представьте, что в моем контроллере есть макропеременная
%LET group_by_variable = VARA VARB;
Затем я делаю ту же самую процедуру, но подставляю макрос-переменную следующим образом:
PROC SQL;
SELECT NAME INTO: MACRO_VARIABLE
SEPARATED BY " "
FROM CONTENTS
WHERE VARNUM > 1
AND
WHERE NAME NOT IN:(&group_by_variable.)
;
QUIT;