【问题标题】:Getting this error - ORA-00936: missing expression出现此错误 - ORA-00936: 缺少表达式
【发布时间】:2017-07-03 16:19:51
【问题描述】:

我是 SQL 新手,并尝试使用等效的 if 语句来获取 SQL 中的值。

运行此报告后,我收到错误“ORA-00936:缺少表达式”

 CASE WHEN (select Sum(MONTANT) from fraisExterne where matching=fm.id and statut=3) IS NULL 
   THEN select sum(MONTANT) from fraisExterne where matching=fm.id 
   ELSE Select sum (MONTANTHTBROKER) from fraismatching where matching=fm.id 
 End End as "BROKER AMOUNT"

如果你能帮助我,请告诉我们

【问题讨论】:

    标签: sql oracle ora-00936


    【解决方案1】:

    您的案例陈述末尾有一个额外的END 关键字。您还需要将您的选择查询放入 ()。

    试试这个:

     SELECT
     CASE
        WHEN (select Sum(MONTANT) from fraisExterne where matching=fm.id and statut=3) IS NULL THEN (select sum(MONTANT) from fraisExterne where matching=fm.id) 
        ELSE (Select sum (MONTANTHTBROKER) from fraismatching where matching=fm.id) 
     End AS BROKER_AMOUNT
    

    我希望这会有所帮助,欢迎使用 StackOverflow。如果您发现此答案或任何其他答案可以解决您的问题,请将其标记为解决方案。这将有助于社区和未来遇到同样问题的程序员同行。谢谢。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-05-13
      • 2018-08-27
      • 1970-01-01
      相关资源
      最近更新 更多