简体   繁体   English

带大小写的SQL Select语句中的语法错误(Oracle)

[英]Syntax Error in SQL Select statement with Case (Oracle)

I have the written following query but it i am getting an error message ie FROM KEY WORD NOT FOUND 我有书面的以下查询,但它收到错误消息,即未FROM KEY WORD NOT FOUND

Any idea? 任何想法?

SELECT H.AGG_HEADER_SEQ,
   H.PRICE,
   D.AGG_DETAIL_SEQ,
   D.MONEY_UNITS,
   D.CASH_VALUE,
   D.UNIT_VALUE,
   D.MONEY_UNITS_VALUE,
   CASE
      WHEN D.MONEY_UNITS = 'U' THEN (D.UNIT_VALUE * H.PRICE) / 1
      WHEN D.MONEY_UNITS = 'M' THEN D.UNIT_VALUE
      ELSE 0
   END
      AS CASH_VALUE_CALC INTO CAL_CASH_VALUE,
   CASE
      WHEN D.MONEY_UNITS = 'U' THEN D.CASH_VALUE
      WHEN D.MONEY_UNITS = 'M' THEN (D.CASH_VALUE * H.PRICE) / 1
      ELSE 0
   END
      AS UNIT_VALUE_CALC INTO CAL_UNIT_VALUE
   FROM FCS.ORDTRAN_NOM_AGG_HEADER H
   JOIN FCS.ORDTRAN_NOM_AGG_DETAIL D
      ON H.AGG_HEADER_SEQ = D.AGG_HEADER_SEQ
   WHERE H.AGG_HEADER_SEQ = 5379 AND D.ALLOW_PRICING = 'Y';  

You have to get rid of INTO CAL_CASH_VALUE : 您必须摆脱INTO CAL_CASH_VALUE

SELECT H.AGG_HEADER_SEQ,
   H.PRICE,
   D.AGG_DETAIL_SEQ,
   D.MONEY_UNITS,
   D.CASH_VALUE,
   D.UNIT_VALUE,
   D.MONEY_UNITS_VALUE,
   CASE
      WHEN D.MONEY_UNITS = 'U' THEN (D.UNIT_VALUE * H.PRICE) / 1
      WHEN D.MONEY_UNITS = 'M' THEN D.UNIT_VALUE
      ELSE 0
   END
      AS CASH_VALUE_CALC 
  
 
  
  
    INTO CAL_CASH_VALUE 
  ,
   CASE
      WHEN D.MONEY_UNITS = 'U' THEN D.CASH_VALUE
      WHEN D.MONEY_UNITS = 'M' THEN (D.CASH_VALUE * H.PRICE) / 1
      ELSE 0
   END
      AS UNIT_VALUE_CALC INTO CAL_UNIT_VALUE
   FROM FCS.ORDTRAN_NOM_AGG_HEADER H
   JOIN FCS.ORDTRAN_NOM_AGG_DETAIL D
      ON H.AGG_HEADER_SEQ = D.AGG_HEADER_SEQ
   WHERE H.AGG_HEADER_SEQ = 5379 AND D.ALLOW_PRICING = 'Y';

If you want to use this query for PL/SQL you have to put this right above the FROM clause, but you have to add variables for other fields. 如果要对PL / SQL使用此查询,则必须将其放在FROM子句的上方,但是必须为其他字段添加变量。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM