如何使用 SAS 宏中有空格的 table 名称?
How to use table names that have spaces in a SAS macro?
PROC EXPORT DBMS=CSV DATA=WORK.'TABLE NAME WITH SPACES IN IT'n
OUTFILE="/test/TABLE NAME WITH SPACES IN IT.CSV";
RUN;
以上作品。下面是不起作用的宏部分。宏确实创建了正确的字符串,但 SAS 仍然给我一个错误。
%let tablename = %nrbquote(&Libname..'&Table.'n);
%put &tablename.;
PROC EXPORT DBMS=CSV DATA=&tablename.
OUTFILE="&outlocation.";
RUN;
%END;
%MEND;
宏变量在单引号内效果不佳,因此如果将其更改为双引号应该没问题。
%let tablename = &Libname.."&Table."n;
PROC EXPORT DBMS=CSV DATA=WORK.'TABLE NAME WITH SPACES IN IT'n
OUTFILE="/test/TABLE NAME WITH SPACES IN IT.CSV";
RUN;
以上作品。下面是不起作用的宏部分。宏确实创建了正确的字符串,但 SAS 仍然给我一个错误。
%let tablename = %nrbquote(&Libname..'&Table.'n);
%put &tablename.;
PROC EXPORT DBMS=CSV DATA=&tablename.
OUTFILE="&outlocation.";
RUN;
%END;
%MEND;
宏变量在单引号内效果不佳,因此如果将其更改为双引号应该没问题。
%let tablename = &Libname.."&Table."n;