8.2.1.2 How MySQL Optimizes WHERE Clauses 如何優化mySQL WHERE子句:
本節讨論優化器用于處理WHERE 子句,例子 選擇SELECT 語句,但是一些優化也适用于DELETE和UPDATE的WHERE 子句。
注意:
因為MySQL 優化器是正在發展,并不是所有的優化器 MySQL執行的都記錄在這裡。
你可能會試圖重寫你的查詢來讓計算更快, 同時犧牲可讀性。
因為MySQL 是類似的自動優化,你通常可以避免這些工作,并讓查詢在一個更加容易了解和維護的形式,
優化器的一部分執行如下:
去除不必要的括号:
((a AND b) AND c OR (((a AND b) AND (c AND d))))
-> (a AND b AND c) OR (a AND b AND c AND d)
折疊:
(a