oracle分頁查詢怎么寫 oracle分頁查詢,需要排序嗎?
oracle分頁查詢,需要排序嗎?1.如果沒有分頁,在記錄特別多的時候,顯示會很慢; 2.如果數(shù)據(jù)實在太多,比如幾百萬到幾千萬甚至上億(我遇到的大部分數(shù)據(jù)量大的都在幾百萬條),分頁前通過select
oracle分頁查詢,需要排序嗎?
1.如果沒有分頁,在記錄特別多的時候,顯示會很慢;
2.如果數(shù)據(jù)實在太多,比如幾百萬到幾千萬甚至上億(我遇到的大部分數(shù)據(jù)量大的都在幾百萬條),分頁前通過select count(*) from table 獲取記錄條數(shù),也不明智; 因為幾百成千萬條的數(shù)據(jù)統(tǒng)計一下記錄數(shù)可能也要10秒左右;
3. 記錄特別多,最好不要做排序,一旦排序特比慢:
請問各位DBA大佬,SQL如何進行多對多表的統(tǒng)計排序分頁查詢?
以oracle為例:
SELECT * FROM
(
SELECT A.*, ROWNUM RN
FROM (SELECT rs.student_id,count(1) FROM relationship rs group by rs.student_id order by count(1) desc) A
WHERE ROWNUM <= 10
)
WHERE RN >= 0