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.

Feature

MySQL 5.5

MySQL 5.6

Disk access optimizations

YES

YES

-

YES

YES

YES

-

YES

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

YES

YES

-

YES

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

YES

YES

YES

YES

YES

YES

-

YES

YES

YES

-

YES

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

This page is licensed: CC BY-SA / Gnu FDL

Last updated

Was this helpful?