mysql語句優化

2021-07-13 12:09:19 字數 682 閱讀 7691

1、若查詢語句查詢結果只有一條,則可以加上limit 1

,則會加快查詢速度。(在兩萬的資料量中,沒有多大區別,在資料量較大的時候應該會影響速度)

2、保證連線的索引是相同型別的 

3、避免使用select *

4、避免掃瞄權標,在order by和where涉及的列上加上索引

5、避免對null值進行判斷,進行資料預設值,盡量用not null填充資料庫(如果是char(100),即使是null,也會占用空間,varchar不會)

6、盡量避免使用!=或者<>,會放棄索引進行全表掃瞄

7、避免使用in 和not in,用between 或者exits

8、在進行模糊查詢是'%acc%'會進行全表掃瞄

9、對於多張大資料量(這裡幾百條就算大了)的表join,要先分頁再join,否則邏輯讀會很高,效能很差。

10、select count(*) from table;這樣不帶任何條件的count會引起全表掃瞄,並且沒有任何業務意義,是一定要杜絕的。

11、盡量使用數字型字段,若只含數值資訊的字段盡量不要設計為字元型,這會降低查詢和連線的效能,並會增加儲存開銷。這是因為引擎在處理查詢和連 接時會逐個比較字串中每乙個字元,而對於數字型而言只需要比較一次就夠了。

12、如果查詢語句只返回一條語句,則在後面加上limit 1

新增sql優化:20160712

mysql 語句優化例項 MySQL 語句優化例項

優化 limit 分頁 執行耗時 1.379s select from vio basic domain info limit 1000000,10 處理分頁慢查詢的方式一般有以下幾種 思路一 構造覆蓋索引 思路二 優化 offset 無法用上覆蓋索引,那麼重點是想辦法快速過濾掉前 100w 條資料...

mysql語句優化原則 MySQL語句優化的原則

1 使用索引來更快地遍歷表。預設情況下建立的索引是非群集索引,但有時它並不是最佳的。在非群集索引下,資料在物理上隨機存放在資料頁上。合理的索引設計要建立在對各種查詢的分析和 上。一般來說 a.有大量重複值 且經常有範圍查詢 和order by group by發生的列,可考慮建立群集索引 b.經常同...

mysql語句優化原則 mysql語句優化原則

有時候發現資料量大的時候查詢起來效率就比較慢了,學習一下mysql語句優化的原則,自己在正常寫sql的時候還沒注意到這些,先記錄下來,慢慢一點一點的學,加油!這幾篇部落格寫的都可以 使用索引的原則 1.最左字首匹配原則。mysql會一直向右匹配直到遇到範圍查詢 不會用到b的索引 where a 1 ...