2015-11-20 06:30:06
閱讀( 396 )
先看一下分頁的基本原理(我拿的是csdn那個百萬級資料庫來測試!):
select * from `csdn` order by id desc limit 100000,2000;
耗時: 0.813ms
分析:對上面的mysql語句說明:limit 100000,2000的意思掃瞄滿足條件的102000行,扔掉前面的100000行,返回最後的2000行。
問題就在這裡,如果是limit 100000,20000,需要掃瞄120000行,在乙個高併發的應用裡,每次查詢需要掃瞄超過100000行,效能肯定大打折扣。
在《efficient pagination using mysql》中提出的clue方式。
耗時:0.015ms
耗時:0.015ms
這樣,不管翻多少頁,每次查詢只掃瞄20行。效率大大提高了!
分享給朋友:
面試題
mysql分頁原理和高效率的mysql分頁查詢語句
以前我在mysql中分頁都是用的 limit 100000,20這樣的方式,我相信你也是吧,但是要提高效率,讓分頁的 效率更高一些,更快一些,那我們又該怎麼做呢?第一部分 看一下分頁的基本原理 複製 如下 mysql explain select from message order by id d...
mysql分頁原理和高效率的mysql分頁查詢語句
以前我在mysql中分頁都是用的 limit 100000,20這樣的方式,我相信你也是吧,但是要提高效率,讓分頁的 效率更高一些,更快一些,那我們又該怎麼做呢?第一部分 看一下分頁的基本原理 如下 mysql explain select from message order by id desc...
mysql分頁原理和高效率的mysql分頁查詢語句
這篇文章主要介紹了mysql分頁原理和高效率的mysql分頁查詢語句,大家參考使用吧 以前我在mysql中分頁都是用的 limit 100000,20這樣的方式,我相信你也是吧,但是要提高效率,讓分頁的 效率更高一些,更快一些,那我們又該怎麼做呢?第一部分 看一下分頁的基本原理 複製 如下 mysq...