mysql百萬級資料分頁查詢緩慢優化 實戰

2021-09-25 16:21:54 字數 580 閱讀 7447

畫面是這樣的

**大概是這樣的

select count(id) from …       查出總數

select * from …. limit m,n    查出分頁資料  

和前端的互動是這樣的

你傳給我查詢條件和pagenum、pagesize

我給你返回total、resultlist

恩,可以開始預估開發時間了

「面對這麼多的資料,只要把新的資料放到前面,使用者不會care後面的資料,是不是可以把頁碼乾掉」

「 使用者也不會管我們到底有多少條記錄,來這裡也只是做檢索而已,總數也可以去掉的,如果要統計資料量我們再單獨統計」

。。。理由還可以有很多,產品大大還是很好說話的

最後設計出來是這樣的

和前端的互動是這樣的

我給你資料資料 

總結重點是在傳統分頁方案上遇到的兩個問題

解決方案是產品和技術共同確認的結果,如果產品不接受,此方案不可行

實際開發中還會碰到的問題

查詢自身帶有排序條件,需要order by多欄位

MySQL百萬級資料分頁查詢優化方案

當需要從資料庫查詢的表有上萬條記錄的時候,一次性查詢所有結果會變得很慢,特別是隨著資料量的增加特別明顯,這時需要使用分頁查詢。對於資料庫分頁查詢,也有很多種方法和優化的點。下面簡單說一下我知道的一些方法。準備工作 為了對下面列舉的一些優化進行測試,下面針對已有的一張表進行說明。表名 order hi...

mysql百萬級資料分頁查詢緩慢優化方法

參考 1 修改需求 一 與產品商討 修改需求 畫面是這樣的 大概是這樣的select count id from 查出總數 select from limit m,n 查出分頁資料 和前端的互動是這樣的你傳給我查詢條件和pagenum pagesize 我給你返回total resultlist 恩...

mysql 百萬級資料的模糊查詢 優化 筆記

最近老大給了乙個需求,是要寫乙個姓名的模糊查詢。問題很簡單,難度在於這張表有將近500w條資料。如果要做中文的模糊查詢,效率簡直慘不忍睹。網上查了一下資料,發現全文索引挺符合我的需要的。結果,使用下來。其實並不太符合我的要求。全文索引的最小單位是詞,如果不是在 in boolean mode 下是沒...