Optimizer Feature Comparison Matrix
The below is a table view. For a more graphical view of the differences see What is the difference between MySQL and MariaDB query optimizers.
Disk access optimizations
Cost-based choice of range vs. index_merge
YES
YES
-
-
ORDER BY ... LIMIT <small_limit>
-
YES
-
YES
Use extended (hidden) primary keys for innodb/xtradb
YES (5.5)
YES
-
-
Join optimizations
User-set memory limits on all join buffers
YES
YES
-
-
Apply early outer table ON conditions
YES
YES
-
-
Null-rejecting conditions tested early for NULLs
YES
YES
-
-
Subquery optimizations
NULL-aware Materialization
YES
YES
-
-
Cost choice of materialization vs. in-to-exists
YES
YES
-
YES
Fast explain with subqueries
YES
YES
-
-
Optimization for derived tables / views
Delayed materialization of derived tables / materialized views
YES
YES
-
YES
Instant EXPLAIN for derived tables
YES
YES
-
YES
Derived Table with Keys optimization
YES
YES
-
YES
Fields of merge-able views and derived tables used in equality optimizations
YES
YES
-
-
Execution control
LIMIT ROWS EXAMINED rows_limit
YES (5.5)
YES
-
-
Optimizer control (optimizer switch)
Systematic control of all optimizer strategies
YES
YES
-
partial
EXPLAIN improvements
EXPLAIN in JSON format
-
-
-
YES
Optimizer trace
Optimizer trace
-
-
-
YES
Last updated
Was this helpful?