文件首頁
MySQL 8.4 參考手冊
相關文件 下載本手冊
PDF (美式信紙) - 39.9Mb
PDF (A4) - 40.0Mb
手冊頁 (TGZ) - 258.5Kb
手冊頁 (Zip) - 365.5Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


MySQL 8.4 參考手冊  /  ...  /  優化子查詢、衍生表、視圖參考和共通表表達式

10.2.2 優化子查詢、衍生表、視圖參考和共通表表達式

MySQL 查詢最佳化工具具有不同的策略可用於評估子查詢

  • 對於與 IN= ANYEXISTS 述詞一起使用的子查詢,最佳化工具具有以下選擇

    • 半聯結

    • 實體化

    • EXISTS 策略

  • 對於與 NOT IN<> ALLNOT EXISTS 述詞一起使用的子查詢,最佳化工具具有以下選擇

    • 實體化

    • EXISTS 策略

對於衍生表,最佳化工具具有以下選擇(也適用於視圖參考和共通表表達式)

  • 將衍生表合併到外部查詢區塊中

  • 將衍生表實體化為內部暫存資料表

以下討論提供了有關上述最佳化策略的更多資訊。

注意

對使用子查詢修改單一資料表的 UPDATEDELETE 語句的限制是,最佳化工具不會使用半聯結或實體化子查詢最佳化。作為一種變通方法,請嘗試將它們重寫為使用聯結而不是子查詢的多資料表 UPDATEDELETE 語句。