【问题标题】:java.sql.SQLException: ORA-00920: invalid relational operatorjava.sql.SQLException: ORA-00920: 无效的关系运算符
【发布时间】:2014-03-25 16:06:31
【问题描述】:

我无法运行此查询,它说某个错误此查询是否有任何错误 如果我在查询and GROUP_name 中删除它,它会成功运行,但我也需要包含该列。有人可以帮忙吗??

SELECT GROUP_name,
       sum(qty),
       sum(AMOUNT) 
  FROM OUTLET_ITEMWISE_FACT_BACK A,
       OUTLET_DETAILS B,
       WEB_ITEM_MASTER C
 WHERE A.OUTLET_ID = B.OUTLET_ID 
   AND A.ITEM_CODE = C.ITEM_CODES
   and GROUP_name and state_name = 'GOA' 
 group by GROUP_name,
          state_name

【问题讨论】:

    标签: oracle


    【解决方案1】:
    and GROUP_name = 'somegroup' and state_name = 'GOA' 
    

    该错误具有误导性,因为编译器希望在 WHERE 子句中的列名之后有一些关系运算符 .. 但它最终看到了一个 AND.. 所以它抛出了那个错误!

    所有WHERE 条件都是two operand 表达式。没有一元运算。所以你必须指定两个操作数.. 一个列或一个值。

    这就是为什么即使是 NULL,我们也必须像在其他编程语言中一样提供 IS NULl !COLUMN_NAME

    【讨论】:

    • 我想根据 state_name 提取 GROUP_name 的数据,如泰米尔纳德邦、x、y、z 等,因此如何根据这些修改查询
    • 只需在 where 子句中省略 GROUP NAME
    • 如果您有问题,请描述您的预期结果。我们可以考虑其他方法。
    猜你喜欢
    • 2014-09-17
    • 2018-08-07
    • 2020-02-07
    • 1970-01-01
    • 2014-07-07
    • 1970-01-01
    • 1970-01-01
    • 2019-11-20
    相关资源
    最近更新 更多