2016-11-30 105 views
1

我正在使用SAP Lumira桌面和连接到SAP ECC的“SQL查询(Freehand SQL)”。我尝试用一​​个case语句扩展查询,但遇到错误如下:SAP Lumira/Freehand SQL语句中的CASE语句错误

SELECT "VBUK-UVALS", 
      CASE ("VBUK-UVALS") WHEN 'A' THEN 'Closed' 
           WHEN 'B' THEN 'Open' 
           ELSE 'Other' 
      END AS "ColumnA" 
FROM "Local"."INFOSET"."ZCA_TESTAR" 

语法错误在SQL查询:
[2:31线在失踪“当”] [第2行: 36在“A”]

请将任何可以引导我通过这个

回答

0

由于错误提示是非常赞赏缺少EOF,你的语法是错误的。一个case表达只有一个case关键字,并且可以有你正在评估的不同值的多个when条款(和一个可选的单else条款):

SELECT "VBUK-UVALS", 
     CASE ("VBUK-UVALS") WHEN 'A' THEN 'Closed' 
          WHEN 'B' THEN 'Open' -- CASE ("VBUK-UVALS") removed 
          ELSE 'Other' 
     END AS "ColumnA" 
FROM "Local"."INFOSET"."ZCA_TESTAR" 
0

对不起,许多“CASE”,这是一个在写这个案子时我错了。 作为查询,然后用相同的错误消息

SELECT "VBUK-UVALS", 
     CASE ("VBUK-UVALS") WHEN 'A' THEN 'Closed' 
          WHEN 'B' THEN 'Open' 
          ELSE 'Other' 
     END AS "ColumnA" 
FROM "Local"."INFOSET"."ZCA_TESTAR" 

语法错误SQL查询中指出: [2:27线缺少FROM在“何时”] [线2:32在“A”缺失EOF]