MySQL 8.0 Reference Manual Including MySQL NDB Cluster 8.0

8.2.2 Optimizing Subqueries, Derived Tables, View References, and Common Table Expressions

The MySQL query optimizer has different strategies available to evaluate subqueries:

For derived tables, the optimizer has these choices (which also apply to view references and common table expressions):

The following discussion provides more information about the preceding optimization strategies.


A limitation on UPDATE and DELETE statements that use a subquery to modify a single table is that the optimizer does not use semi-join or materialization subquery optimizations. As a workaround, try rewriting them as multiple-table UPDATE and DELETE statements that use a join rather than a subquery.