为什么Oracle给我一个“Missing right parenthesis”错误?

时间:2012-11-12 15:16:29

标签: oracle compiler-errors

我有一些我以前从未见过的东西。以下是SELECT语句的片段:

FROM CustomerTable@pgr C
... (lots of stuff) ...
LEFT OUTER JOIN PRPC.OrderTable@pgr T1
  ON T1.CompanyID = C.CompanyID 
  AND COALESCE(T1.CustomerID, C.CustomerID) = C.CustomerID
LEFT OUTER JOIN PRPC.OrderTable@pgr T2
  ON T2.CompanyID = C.CompanyID 
  AND COALESCE(T2.CustomerID, C.CustomerID) = C.CustomerID
  AND T2.OrderDate > T1.OrderDate
EFT OUTER JOIN ... (more stuff)

查询给出了一个错误:

ORA-00907: missing right parenthesis
ORA-02063: preceding line from PGR
00907.00000 - "missing right parenthesis"

这是非常奇怪的部分:如果我注释掉AND T2.OrderDate > T1.OrderDate行,那么错误就会消失。我不知道这会对括号产生怎样的影响?

另一件事:如果我直接在PGR数据库上运行它,我不会收到错误(但直接在数据库上运行它不是应用程序的这一部分的选项)。

我在这个网站上读到了一些关于“缺少右括号”的其他问题,但它们似乎都涉及括号。我完全迷失在这一个。 (PS - 我手动输入,而不是复制/粘贴,所以如果有任何拼写错误,那就是我,而不是代码)

0 个答案:

没有答案