數(shù)據(jù)庫存儲過程 為什么MySQL在數(shù)據(jù)庫較大的時候分頁查詢很慢,如何優(yōu)化?
為什么MySQL在數(shù)據(jù)庫較大的時候分頁查詢很慢,如何優(yōu)化?正如房東所說,分頁查詢在我們的實際應(yīng)用中非常常見,也是問題最多的查詢場景。例如,對于下面的簡單語句,通常的思考方式是在name、age、reg
為什么MySQL在數(shù)據(jù)庫較大的時候分頁查詢很慢,如何優(yōu)化?
正如房東所說,分頁查詢在我們的實際應(yīng)用中非常常見,也是問題最多的查詢場景。例如,對于下面的簡單語句,通常的思考方式是在name、age、register中u在time字段上創(chuàng)建一個復(fù)合索引。這樣,條件排序可以有效地利用索引,性能得到快速提高。
如上例所示,當limit子句變?yōu)椤發(fā)imit 100000,50”時,我們會發(fā)現(xiàn),如果只選擇了50條語句,為什么會變慢?
,所以我們會覺得很慢。
最近我的數(shù)據(jù)庫(sql)查詢速度很慢,這是什么原因?
慢查詢與表結(jié)構(gòu)、語句、系統(tǒng)等有關(guān),索引等方法可以改善表結(jié)構(gòu),另外,如果返回的數(shù)據(jù)量大,速度也會慢,所以應(yīng)該盡量查詢比較有用的數(shù)據(jù),然后再查詢語句。例如,在查詢中使用不如使用Jin query快,并且在to><之間切換會更快。另外,使用子查詢會慢得多,對于一些非常復(fù)雜的查詢,最好使用存儲過程。有時,使用臨時表很慢。但是,使用臨時表從大量數(shù)據(jù)中查詢數(shù)據(jù)以進行子查詢的速度不如使用臨時表來查詢數(shù)據(jù)的速度快。不同的問題可以用不同的方法來解決,這取決于你想要哪種方法。你不能僅憑你的問題就直接判斷。然而,優(yōu)化查詢語句是關(guān)鍵。