Oracle 11g 替代方案首先获取?

oracle 11g alternative for fetch first?

此代码在 Oracle live sql 中运行良好,但是当我将它放在服务器上时,我得到一个 SQL 命令未正确结束我想知道是否因为它的 oracle 版本不同,服务器在 oracle11g

SELECT g.GID, g.Name, COUNT(*) as cnt
FROM VisitN v JOIN
     GuestN g
     ON v.GID = g.GID
GROUP BY g.GID, g.Name
ORDER BY cnt DESC
FETCH FIRST 1 ROWS ONLY;

谢谢

您可以使用 ROWNUM。例如:

select *
from (
  SELECT g.GID, g.Name, COUNT(*) as cnt
  FROM VisitN v JOIN
     GuestN g
     ON v.GID = g.GID
  GROUP BY g.GID, g.Name
  order by cnt desc
) x
where rownum = 1

请参阅 db<>fiddle 中的 运行 示例。