Oracle缺少右括号

Ric*_*nop 1 sql oracle oracle10g ora-00907

这是我的查询:

SELECT * FROM Auta WHERE SUBSTR(spz, 1, 2) = 
(SELECT SUBSTR(spz, 1, 2) FROM Auta WHERE typ = 'BMW' AND specifikacia_typu = 'Z1' LIMIT 1);
Run Code Online (Sandbox Code Playgroud)

当我运行它时,我收到此错误:

ORA-00907: missing right parenthesis
Run Code Online (Sandbox Code Playgroud)

我有点绝望了,我已经尝试在查询中到处添加括号,我仍然得到错误?查询中有3个左括号和3个右括号,所以一切都应该是正确的.

Vin*_*rat 7

Oracle中不存在LIMIT子句.相反,你会使用rownum:

SELECT *
  FROM Auta
 WHERE SUBSTR(spz, 1, 2) = (SELECT SUBSTR(spz, 1, 2)
                              FROM Auta
                             WHERE typ = 'BMW'
                               AND specifikacia_typu = 'Z1'
                               AND ROWNUM = 1);
Run Code Online (Sandbox Code Playgroud)