Доброе утро, эксперты.
У меня есть несколько ежемесячных таблиц.Некоторые из них называются Alpha_YYYYMM, а другие Beta_YYYY_MM.При вызове этих таблиц я использую два приглашения к переменным, A и B, где разность составляет только «_».Как я могу вызвать таблицу Alpha и Beta, используя только одну подсказку в SAS SQL?В настоящее время я называю таблицы как:
PROC SQL;
CREATE TABLE WORK.ALPHA_CURRENT_MONTH AS
SELECT DISTINCT *
FROM PMIFDMSL.ALPHA_δ
QUIT;
PROC SQL;
CREATE TABLE WORK.BETA_CURRENT_MONTH AS
SELECT DISTINCT *
FROM PMIFDMSL.BETA_&del_ta;
QUIT;
Я уже пробовал:
PROC SQL;
CREATE TABLE WORK.ALPHA_CURRENT_MONTH AS
SELECT DISTINCT *
FROM PMIFDMSL.ALPHA_δ
QUIT;
%let a=%qsubstr(&delta,1,4);
%let b=%qsubstr(&delta,5,2);
%let del_ta=&a_&b;
PROC SQL;
CREATE TABLE WORK.BETA_CURRENT_MONTH AS
SELECT DISTINCT *
FROM AREATEMP.BETA_&del_ta;
QUIT;
и другие комбинации.
Но я продолжаю получать это сообщение об ошибке:
43 FROM AREATEMP.BETA_&del_ta;
NOTE: PROC SQL set option NOEXEC and will continue to check the syntax of statements.
NOTE: Line generated by the macro variable "DEL_TA".
43 AREATEMP.BETA_2019_06)
____
22
____
76
ERROR 22-322: Syntax error, expecting one of the following: a name, ;, (, ',', ANSIMISS, AS, CROSS, EXCEPT, FULL, GROUP, HAVING,
INNER, INTERSECT, JOIN, LEFT, NATURAL, NOMISS, ORDER, OUTER, RIGHT, UNION, WHERE.
ERROR 76-322: Syntax error, statement will be ignored.
Заранее спасибо за помощь.