table
Table access is via an access_type which describes how the table is accessed or joined to other tables in the query.
Detailed Descriptionβ
Table access is via an access_type which describes how the table is accessed or joined to other tables in the query.
There are other properties such as the table_name, query_cost, rows_examined_per_scan and several others depending on the access_type which then give further details about the efficiency of the access type.
Table access types (access_type)β
The following list describes the access types, ordered from the best type to the worst:
systemβ
The system access type is a special type of const join type on a system table with only one row. This is a very fast access.
MySQL Documentation - access type system
constβ
The const access type is accessing a table with at most one row in. This table is ready at the start of the query and is very fast due to only being read once. const accesses can be seen reading a single value from a primary key or a unique index.
MySQL Documentation - access type const
eq_refβ
The eq_ref access method joins a single row in the first data source with a single row in the second data source. This is a very fast access method as it requires primary keys or unique not null indexes as sources of data.
MySQL Documentation - access type eq_ref
refβ
The ref access method is used to join data sources where uniqueness cannot be guaranteed. Where the access key returns a low number of records, this access method performs well.
MySQL Documentation - access type ref
fulltextβ
The fulltext join type uses a FULLTEXT index to join.
MySQL Documentation - access type fulltext
ref_or_nullβ
Similar to ref join access, but the ref_or_null has the ability to do an extra search for NULL values. This join method is often used with subqueries and to search for NULL values.
MySQL Documentation - access type ref_or_null