一般情況對於有主鍵,能夠做唯一表識的表,我們可以利用主鍵和rownum配合實現,例如:
select scott.emp.*
from scott.emp left join
(select empno id, rownum num from scott.emp) id_num
on scott.emp.empno = id_num.id
where id_num.num between 5 and 10;
如果遇到沒有主鍵的表可以嘗試rowid代替,rowid不會因為排序或者查詢,甚至update都不會修改,因此可以借助這個字段作分頁。
select scott.emp.*
from scott.emp left join
(select rowid id, rownum num from scott.emp) id_num
on scott.emp.rowid = id_num.id
where id_num.num between 5 and 10;