为啥“缺少右括号”错误?
Posted
技术标签:
【中文标题】为啥“缺少右括号”错误?【英文标题】:why "missing right parenthesis" error?为什么“缺少右括号”错误? 【发布时间】:2012-05-30 21:34:00 【问题描述】:为什么查询会产生这个错误?
ORA-00907:缺少右括号 00907. 00000 - “缺少右括号”
select * from
(
(select * from dual) alias1,
(select * from dual) alias2
)
我在 10g 和 11g 上遇到错误
【问题讨论】:
只去掉外面的() 【参考方案1】:不正确的 SQL 语法。去掉外圆括号,像这样:
select * from
(select * from dual) alias1,
(select * from dual) alias2;
【讨论】:
【参考方案2】:你的括号是平衡的,但是解析器很混乱,在它的混乱中,它产生了一个次优的错误消息。
你可以这样写:
SELECT *
FROM (SELECT * FROM Dual) Alias1
JOIN (SELECT * FROM Dual) Alias2 ON 1 = 1;
【讨论】:
以上是关于为啥“缺少右括号”错误?的主要内容,如果未能解决你的问题,请参考以下文章
SQL 错误:ORA-00907:缺少右括号 00907。00000 -“缺少右括号”
错误报告 - ORA-00907: 缺少右括号 00907. 00000 - “缺少右括号