【问题标题】:SAS macro variable concatenation with text with single quotesSAS 宏变量连接与带单引号的文本
【发布时间】:2016-10-05 02:48:16
【问题描述】:

我正在使用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');

它给出了错误。请帮助我在输出中使用单引号中的文本获取正确的宏变量。

【问题讨论】:

  • try ("&Study.$test"),我猜双引号会让你的问题在这里,但我自己目前无法测试。点是为了让 Sas 识别你的宏变量的结尾,正常的引用就足够了。
  • ...或者只是OWNER EQ "&STUDY.$TEST"; ?
  • 所有者情商 "&STUDY.$TEST";工作中。谢谢。

标签: sas


【解决方案1】:

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

"&study$TEST"

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

%bquote('&study$TEST')

如果宏引用引起问题,您可以使用%UNQUOTE() 宏函数将其删除。

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多