--oracle分頁查詢
--簡單初級階段
select * from (select * from score s order by math desc) where rownum = 1;
--中級階段,基本實現了結果,但仍有可優化的空間!
select *
from (select so.*, rownum rw
from (select * from score s order by math desc) so) sa
where sa.rw >= 1
and sa.rw <= 4;
--究極形態...!效率最高!
select *
from (select so.*, rownum rw
from (select * from score s order by math desc) so
where rownum <= 4) sa
where sa.rw >= 1;
想繼續深入,可參照大牛的這篇文章:
Oracle的分頁查詢
oracle的分頁查詢語句基本上可以按照本文給出的格式來進行套用。分頁查詢格式 select from select a.rownum rn from select from table name a where rownum 40 where rn 21 其中最內層的查詢select from t...
oracle的分頁查詢
其中最內層的查詢select from table name表示不進行翻頁的原始查詢語句。rownum 40和rn 21控制分頁查詢的每頁的範圍。上面給出的這個分頁查詢語句,在大多數情況擁有較高的效率。分頁的目的就是控制輸出結果集大小,將結果盡快的返回。在上面的分頁查詢語句中,這種考慮主要體現在wh...
Oracle的分頁查詢
快速通道 結論oracle的分頁查詢使用很廣泛,也較為簡單,主要根據是偽劣值rownum來實現,具體分兩步走 首先要獲得表中的num 這裡借用已經建好的student表方便舉例 查詢結果即可作為子表提供給下一步查詢 假設分別取第1條資料到第5條資料和第6條資料到第10條資料 select from ...