您好,登錄后才能下訂單哦!
下文主要給大家帶來數據量大mysql分頁查詢簡析,希望數據量大mysql分頁查詢簡析能夠帶給大家實際用處,這也是我編輯這篇文章的主要目的。好了,廢話不多說,大家直接看下文吧。
在開發過程中我們經常會使用分頁,核心技術是使用limit進行數據的讀取。在使用limit進行分頁的測試過程中,得到以下數據:
select * from news order by id desc limit 0,10 耗時0.003秒 select * from news order by id desc limit 10000,10 耗時0.058秒 select * from news order by id desc limit 100000,10 耗時0.575秒 select * from news order by id desc limit 1000000,10 耗時7.28秒
我們驚訝的發現mysql在數據量大的情況下分頁起點越大查詢速度越慢,100萬條起的查詢速度已經需要7秒鐘。這是一個我們無法接受的數值!
改進方案 1
select * from news where id > (select id from news order by id desc limit 1000000, 1) order by id desc limit 0,10
查詢時間 0.365秒,提升效率是非常明顯的!!原理是什么呢???
我們使用條件對id進行了篩選,在子查詢 (select id from news order by id desc limit 1000000, 1) 中我們只查詢了id這一個字段比起select * 或 select 多個字段 節省了大量的查詢開銷!
改進方案2
適合id連續的系統,速度極快!
select * from news where id between 1000000 and 1000010 order by id desc
不適合帶有條件的、id不連續的查詢。速度非常快!
對于以上關于數據量大mysql分頁查詢簡析,大家是不是覺得非常有幫助。如果需要了解更多內容,請繼續關注我們的行業資訊,相信你會喜歡上這些內容的。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。