SQL優化那些事

2022-09-12 13:36:28 字數 767 閱讀 7498

說到sql優化,網上也充斥著各種優化方案。這裡總結一下:

一、建立索引

建立索引是最快速,也是最有效的優化方式。你肯定也聽說過,索引並不是越多越好。具體什麼時候需要建立索引,什麼時候不能建立索引。具體都有什麼樣的規則:

首先索引並不是越多越好,要做到寧缺毋濫。一張表中索參數量建議不超過4個

1》以下情況不考慮建立索引:

1.更新頻繁的表字段,不建立索引

2.表記錄內容較少時,不建立索引

3.唯一性太差的字段不建立索引

2》建立索引

1.經常查詢的字段新增索引

2.表連線的關聯字段新增索引

二、下面說一些語句書寫方面的一些優化方式

經常用到的一些優化方式這裡我就不贅述了,下面我著重說一些不太常見的一些優化方式,也是我們經常關注的問題:

1.先篩選資料後表連線?還是先表連線後篩選資料?

如果關聯條件是主鍵或是索引欄位時,先表連線後刪選資料,否則先篩選資料後表連線

2.表連線大表在前還是小表在前?

原則:小表驅動大表

3.先分組還是先表連線?

問題同1,當有索引的時候先表連線,否則先分組

4.sql執行順序問題

oracle的where語句是從右向左執行的,mysql的where語句是從左向右執行的,建議篩選資料量大的條件放前面執行。

三、優化準則

我們在做sql優化的時候是以什麼樣的準則來進行優化呢?

sql執行計畫是我們進行sql優化的標準,下面這篇是乙個sql執行計畫的優化標準。

細說PHP優化那些事

我們在用php程式設計的時候,總是想要使自己的程式占用資源最小,執行速度更快,量更少。往往我們在追求這些的同時卻失去了很多東西。下面我想講講我對php優化的理解。優化的目的是花最少的代價換來最快的執行速度與最容易維護的 進行大範圍的優化,而不是死啃某些程式 我這裡所說的優化,基本上都是從伺服器,ap...

app 效能優化的那些事

iphone上面的應用一直都是以流暢的操作體驗而著稱,但是由於之前開發人員把注意力更多的放在開發功能上面,比較少去考慮效能的問題,可能這其中涉及到objective c,c 跟lua,優化起來相對複雜一些,導致應用在比如touch等較低端的產品上,光從啟動到進入頁面就花了將近一分鐘的時間,頁面之間的...

iOS app效能優化的那些事 二

tableview 滑動不流暢 那碰到這種情況該怎麼處理,分析影象動畫效能主要用的是core animation這個元件,先簡單介紹一下裡面一些經常用到的選項 當你碰到效能問題的時候,你可以思考一下 是否受到cpu或者gpu的限制?是否有不必要的cpu渲染?是否有太多的離屏渲染操作?是否有太多的圖層...