代码:
SELECT /*+ FIRST_ROWS ORDERED USE_NL(X,Y) */
Y.*
FROM (SELECT RID
FROM (SELECT /*+ FIRST_ROWS */ T.ROWID RID,ROWNUM RN
FROM TABLE_NAME T
WHERE ROWNUM<=5)
WHERE RN>=3) X,
TABLE_NAME Y
WHERE X.RID=Y.ROWID;
无分页要求的也可以这样,看是什么情况了
一般来说分页语句不可能会翻页到很后面的,越到后面越慢
SELECT FIELD1,FIELD2,FIELD3
FROM (SELECT /*+ FIRST_ROWS */
T.FIELD1,T.FIELD2,T.FIELD3,ROWNUM RN
FROM TABLE_NAME T
WHERE ROWNUM<=5)
WHERE RN>=3