MySQL對limit查詢語句的優(yōu)化方法
當(dāng)我們的網(wǎng)站達(dá)到一定的規(guī)模時,網(wǎng)站的各種優(yōu)化是必須要進(jìn)行的。而網(wǎng)站的優(yōu)化中,針對數(shù)據(jù)庫各種優(yōu)化是最重點的了。下面作者將要和大家分享一下MySQL數(shù)據(jù)庫中的查詢語句有關(guān)limit語句的優(yōu)化。
大家都知道一般limit是用在分頁的程序的分頁上的,當(dāng)你的應(yīng)用數(shù)據(jù)量夠小的時候,也許你感覺不到limit語句的任何問題,但當(dāng)查詢數(shù)據(jù)量達(dá)到一定程度的時候,limit的性能就會急劇下降。這個是通過大量實例得出來的結(jié)論。
下面通過具體的案例來說明,這里是對同一張表在不同的地方取10條數(shù)據(jù):
(1)offset比較小的時候
這條SQL語句多次運行,時間保持在0.0004-0.0005之間。
這條SQL語句多次運行,時間保持在0.0005-0.0006之間,主要是0.0006。
結(jié)論:偏移offset較小的時候,直接使用limit較優(yōu)。這個顯然是子查詢的原因。
(2)offset大的時候
這條SQL語句多次運行,時間保持在0.0187左右
這條SQL語句多次運行,時間保持在0.0061左右,只有前者的1/3??梢灶A(yù)計offset越大,后者越優(yōu)。
經(jīng)過以上對比,我們得出一個結(jié)論是使用limit語句時,當(dāng)數(shù)據(jù)量偏移量較小的時候可以直接使用limit,當(dāng)數(shù)據(jù)量偏移量較大的時候,我們可以適當(dāng)?shù)氖褂米硬樵儊碜鱿嚓P(guān)的性能優(yōu)化。
相關(guān)文章
安裝配置mysql及Navicat prenium的詳細(xì)流程
這篇文章主要介紹了安裝配置mysql及Navicat Premium的詳細(xì)流程,配置方法也真的很簡單,本文給大家詳細(xì)介紹mysql Navicat Premium安裝配置相關(guān)知識感興趣的朋友,一起學(xué)習(xí)吧2021-06-06詳解MySQL數(shù)據(jù)類型DECIMAL(N,M)中N和M分別表示的含義
關(guān)于MySQL數(shù)據(jù)類型decimal中n和m分別表示什么含義?本文就此問題作了簡單論述,并創(chuàng)建相關(guān)表進(jìn)行驗證,需要的朋友可以了解下。2017-10-10MYSQL關(guān)聯(lián)關(guān)系查詢方式
文章詳細(xì)介紹了MySQL中如何使用內(nèi)連接和左外連接進(jìn)行表的關(guān)聯(lián)查詢,并展示了如何選擇列和使用別名,文章還提供了一些關(guān)于查詢優(yōu)化的建議,并鼓勵讀者參考和支持腳本之家2025-02-02mysql error:#1062 Duplicate entry ‘***′ for key 1問題解決方法
今天公司的一個網(wǎng)站突然提示MySQL Error Duplicate entry '96624' for key 1錯誤,經(jīng)過分析這個問題是由于mysql表中的一個id自增長字段導(dǎo)致。2011-09-09Can’t open file:''[Table]mytable.MYI''
也許很多人遇到過類似Can’t open file: ‘[Table]mytable.MYI’ 這樣的錯誤信息,卻不知道怎么解決他,下面我們做個介紹,2011-01-01docker下mysql 8.0.20 安裝配置方法圖文教程
這篇文章主要介紹了docker下mysql 8.0.20 安裝配置方法圖文教程,文中安裝步驟介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2020-05-05在windows環(huán)境下配置并隨意切換兩種mysql版本的方法
這篇文章主要介紹了mysql:如何在windows環(huán)境下配置并隨意切換兩種mysql版本,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-01-01