【问题标题】:SAS nested select MAX statementSAS 嵌套选择 MAX 语句
【发布时间】:2017-09-15 17:40:41
【问题描述】:

我正在使用以下内容,但收到如下所示的错误。引发错误的代码部分是 MAX(EX_DT) EXPIRATION_DT 并在 EXPIRATION_DT 下划线。

想法?


                             22

错误 22-322:语法错误,应为以下之一:!、!!、&、*、**、+、'、'、-、/、、=、> , >=, ?, AND, AS, 包含,EQ,EQT,GE,GET,GT,GTT,LE,LET,LIKE,LT,LTT,NE,NET,OR,^=,|,||,~=。

LEFT OUTER JOIN
(select LN_NO, 
MAX(EX_DT) EXPIRATION_DT
FROM R1.SAMPLE_TABLE
GROUP BY LN_NO, 
EXPIRATION_DT) T1
ON T1.NUM = TL.NUM

【问题讨论】:

    标签: select nested sas max


    【解决方案1】:

    MAX(EX_DT) EXPIRATION_DT

    需要改成

    MAX(EX_DT) 作为 EXPIRATION_DT

    【讨论】:

      【解决方案2】:

      如果您想为您选择的值指定一个新名称,您需要使用 AS 关键字。否则 SAS 期望第二个标记是您要附加到变量的 LABEL。

      所以语法是

      expression string_literal
      

      expression as varname
      

      要同时指定两者,您可以使用

      expression as varname string_literal
      

      但您可以使用关键字来设置标签和其他属性,如 LENGTH、FORMAT、INFORMAT。

      catx(', ',lastname,firstname) as fullname label='Person Name' length=40 
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2018-08-12
        • 2021-04-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-02-04
        相关资源
        最近更新 更多