sql優化之邏輯優化

2021-09-13 01:59:17 字數 348 閱讀 5923

在單機資料庫系統中進行優化。面臨的問題,比如說給定乙個要query的sql語句,查詢優化演算法的目標就是找到查詢的乙個具有最小執行花費的執行計畫,如果找到了,那麼這樣的執行計畫一定具有最快的響應時間。
查詢語句可表示成一顆二叉樹,其中葉子代表關係,內部結點是運算子,表示左右子樹的連線關係,子樹是sql片段或子表示式。根節點是最後運算的操作符。根節點運算之後,得到的是sql查詢優化後的結果。這樣一棵樹就是查詢路徑。多個關係連線,連線順序不同,可以得出多個類似的二叉樹。

查詢優化就是找出代價最小的二叉樹,即最優的查詢路徑。

每條路徑的生成,包括單錶掃瞄,兩表連線,多表連線順序,多表連線搜尋空間等技術。

SQL優化 邏輯優化

1 外連線消除 外連線簡介 1 left join left outer join 左外連線 左向外連線的結果集包括 left outer子句中指定的左表的所有行,而不僅僅是連線列所匹配的行。如果左表的某行在右表中沒有匹配行,則在相關聯的結果集行中右表的所有選擇列表列均為空值。2 right joi...

mysql優化之sql優化原則

原則一 選擇需要優化的sql 1 選擇更需要優化的sql 高併發 低消耗的sql。例項 a語句 1小時請求1w次,1次10個io b語句 1小時請求10次,1次1w個io 1 從單位時間產生的io總數來說,相同的 2 針對乙個sql,如果我能把10個io變成7個io,一小時減少3w個io 針對第二個...

SQL優化之索引

sql優化有很多方法,今天來說一說資料庫索引。舉例說明 假設有乙個圖書book表,裡面有欄位id,name,isbn等。如果圖書數量巨大的話,我們通過isbn查詢通常是比較慢的。新增索引 create index index isbn on book isbn 查詢時間從0.134縮短到0.001,...