MySQL實(shí)現(xiàn)分頁查詢的方法
SQL分頁查詢:

背景
?在公司的系統(tǒng)中有一個(gè)平臺(tái)是 做配置管理的 就是所謂的 CRUD 的平臺(tái),但是點(diǎn)擊后進(jìn)去到頁面第一次看到的是一次查詢的頁面 (點(diǎn)擊頁面自動(dòng)的觸發(fā)查詢的功能) 后面就可以你的CRUD的操作是給運(yùn)營(yíng)的同事來操作的,但是一般的是我們數(shù)據(jù)量比較的少的業(yè)務(wù)是之間查詢出來所有的數(shù)據(jù),直接返回給前端的讓他自己做分頁的,但是有一些數(shù)據(jù)量達(dá)到上萬級(jí)別的時(shí)候,不能讓他們亂搞了,必須要用到給我多加入兩個(gè)參數(shù)了
解決方法
非常的簡(jiǎn)單的加入兩個(gè)參數(shù) (1) 頁數(shù) (2) 每頁的查詢的數(shù)量 (后端都有默認(rèn)值防止不傳)
service需要的處理
處理方式非常的簡(jiǎn)單的 在sql 中進(jìn)行抽取一下
查詢?nèi)康臄?shù)據(jù) 沒有加入分頁

?加入分頁的 這里特別需要注意的是:
分頁的查詢 第一個(gè)是頁數(shù),每頁的數(shù)量 這里的頁數(shù)需要處理一下有個(gè)公式 sql寫入的頁數(shù) = (頁數(shù)-1) * 每頁的數(shù)量

sql 是如何處理的
- 第一種
SELECT * FROM test_user_info limit 0,4;
- 第二種
有時(shí)候 通過分頁是可以解決 大多數(shù)的情況,但是我們可以預(yù)測(cè)到數(shù)據(jù)到哪一步,就是從哪里開始適合大量數(shù)據(jù)的表中, 我們稍微改一下SQL
加入 啟始的 id 開始 每次獲取 4條數(shù)據(jù)
SELECT * FROM test_user_info WHERE id > 32 limit 4;

還有 普通的查詢的時(shí)候知道是一條數(shù)據(jù)的時(shí)候 在后面加入 limit 1 sql執(zhí)行速度更快

這是一個(gè)明顯的對(duì)比了

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
sql語句escape查詢數(shù)據(jù)中含通配字符[ %用法詳解
這篇文章主要為大家介紹了sql語句escape查詢數(shù)據(jù)中含通配字符[ %用法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-08-08
MYSQL數(shù)據(jù)庫表結(jié)構(gòu)優(yōu)化方法詳解
這篇文章主要介紹了MYSQL數(shù)據(jù)庫表結(jié)構(gòu)優(yōu)化方法,總結(jié)分析了mysql針對(duì)表結(jié)構(gòu)優(yōu)化的數(shù)據(jù)類型選擇、范式化操作、表的拆分等相關(guān)使用技巧,需要的朋友可以參考下2019-08-08
同時(shí)運(yùn)行多個(gè)MySQL服務(wù)器的方法
在同一臺(tái)機(jī)器上運(yùn)行多個(gè)有些情況下你可能想要在同一臺(tái)機(jī)器上運(yùn)行多個(gè)服務(wù)器。例如,你可能想要測(cè)試一個(gè)新的MySQL版本而讓你現(xiàn)有生產(chǎn)系統(tǒng)的設(shè)置不受到干擾, 或你可能是想要為不同的客戶提供獨(dú)立的MySQL安裝一個(gè)因特網(wǎng)服務(wù)供應(yīng)商。2008-05-05
如何使用myisamchk和mysqlcheck工具快速修復(fù)損壞的MySQL數(shù)據(jù)庫文件
有時(shí)候數(shù)據(jù)庫突然就壞了很郁悶,用mysqlcheck.exe可以修復(fù)受損數(shù)據(jù)庫2020-01-01
Mysql優(yōu)化之Zabbix分區(qū)優(yōu)化
這篇文章主要介紹了Mysql優(yōu)化中Zabbix分區(qū)優(yōu)化的詳細(xì)方法和優(yōu)缺點(diǎn)分析,一起學(xué)習(xí)下。2017-11-11

