SAS宏变量连接与带单引号的文本

时间:2016-06-05 11:38:29

标签: sas

我正在使用PROC SQL。 宏变量是STUDY --- ENTERED VALUE AS CBYM 我希望输出像---' CBYM $ test'

CREATE TABLE TEST AS
    SELECT OWNER, VIEW_NAME 
    FROM SYS.ALL_VIEWS
    WHERE OWNER IN ('"&STUDY"$TEST');

这是错误的。请帮我在输出中用单引号中的文本获取正确的宏变量。

1 个答案:

答案 0 :(得分:2)

首先请注意,SAS并不关心您是否使用单引号或双引号来表示字符串文字。所以你可以使用:

"&study$TEST"

如果您将代码直接传递给一个小心的远程数据库,您可以尝试使用%BQUOTE()宏函数来解析单引号内的宏变量引用。

%bquote('&study$TEST')

如果宏引用导致问题,那么您可以使用%UNQUOTE()宏功能将其删除。

%unquote(%bquote('&study$TEST'))