Mysql的優化策略

2021-10-01 12:16:28 字數 1152 閱讀 9073

避免使用null值判斷

一般來說,使用null值判斷時,一般都是全表檢索,但是有例外,覆蓋索引時索引會生效。

盡量使用索引

在where條件列或者order by 等涉及的列上加上索引,能夠有效地避免全表掃瞄,縮小查詢範圍,加快資料檢索的速度。

最佳左字首原則

出現聯合索引時,必須聯合索引中的第乙個字段作為條件才能保證使用到該索引,並且盡量保證條件中列的順序與索引中列的順序一致。

1)、增加列和聯合索引

2)、測試

不要在索引列上進行計算

使用索引時,在符號(eg:=)左側進行計算操作(eg:函式等)會導致索引失效,進行全表掃瞄。

盡量避免範圍查詢(< > 等)

範圍查詢可能導致索引失效而進行全表掃瞄,所以應當盡量避免範圍查詢。如果一定需要進行範圍查詢,則將範圍查詢的列放在查詢條件的最後面,此時需要考慮聯合索引的合理性(eg:將範圍查詢列放在索引中的最後)。

字串型列加引號

不加引號會導致索引失效

盡量不使用模糊查詢

模糊查詢(eg:like %abc%)可能導致索引失敗而進行全表檢索。當like的值的離散度較大,like 'abc%'會使用索引;離散值較小時,like 'abc%'也可能導致索引失效。

如果有寫的不對的地方,請大家多多批評指正,非常感謝!

mysql 優化策略 mysql的優化策略有哪些

第一 優化你的sql和索引 1.善用explain,看看自己寫的sql到底要涉及到多少表,多少行,使用了那些索引,根據這些資訊適當的建立索引 2.善用不同的儲存引擎,mysql有多種不同的儲存引擎,innodb,aria,memory根據需要給不同的表選擇不同的儲存引擎,比如要支援transacti...

mysql常見的優化策略

sql的優化主要是圍繞著在查詢語句的時候盡量使用索引避免全表掃瞄。使用索引 對查詢進行優化,應盡量避免全表掃瞄,首先應考慮在 where 及 order by 涉及的列上建立索引。避免判斷null值 應盡量避免在 where 子句中對字段進行 null 值判斷 is null,is not null...

mysql常見的優化策略

sql的優化主要是圍繞著在查詢語句的時候盡量使用索引避免全表掃瞄。select id from t where num is null 可以在num上設定預設值0,確保表中num列沒有null值,然後這樣查詢 select id from t where num 0 mysql只對以下操作符才使用索...