如何在Oracle 11g的"select"查询中添加偏移量?

sas*_*ori 11 sql oracle pagination oracle11g rownum

如何在Oracle 11g中的"选择"查询中添加偏移量.我只知道如何添加限制,例如rownum <= 5 这个问题不重复,我已经检查了其他问题并且与我的相关.

那么,如何在Oracle 11g中添加偏移量呢?

Lal*_*r B 21

您可以12c通过指定轻松完成OFFSET.

12c,

SELECT val
FROM   table
ORDER BY val
OFFSET 4 ROWS FETCH NEXT 4 ROWS ONLY;
Run Code Online (Sandbox Code Playgroud)

做同样的上11g和之前,你需要使用ROWNUM两次,inner queryouter query分别.

同样的查询11g,

SELECT val
FROM   (SELECT val, rownum AS rnum
        FROM   (SELECT val
                FROM   table
                ORDER BY val)
        WHERE rownum <= 8)
WHERE  rnum > 4;
Run Code Online (Sandbox Code Playgroud)

OFFSET是4.