Oracle-Sql-Developer

無法在 sql Developer 上執行 LIMIT

  • February 15, 2013

我正在嘗試在 sqlDeveloper 上執行以下操作

SELECT salary FROM emp ORDER BY salary DESC LIMIT 4, 1;

但它拋出以下錯誤:

ORA-00933:SQL 命令未正確結束 00933. 00000 - “SQL 命令未正確結束” *原因:

*操作:行錯誤:1 列:44

Oracle 11g 不支持該LIMIT條款,儘管傳聞即將發布的 12c 版本支持它。

無論如何,您可以使用分析視窗函式來執行此操作:

select * from
( 
 select salary, row_number() over (order by salary desc) as rn
 from emp
)
where rn = 4;

您也可以使用 來執行此操作rownum,但我發現上述方法看起來更乾淨。

範例SQL Fiddle供您使用。

引用自:https://dba.stackexchange.com/questions/34805