Справочное руководство по MySQL версии 4.1.1-alpha



5.2.1 Синтаксис оператора EXPLAIN (получение информации о SELECT) - часть 2


select_type

Тип оператора SELECT, который может быть один из следующих:

SIMPLE

Простая выборка (SELECT без UNION или подзапросов).

PRIMARY

Крайний SELECT.

UNION

Второй и дальнейшие UNION SELECT.

DEPENDENT UNION

Второй и дальнейшие UNION SELECT, зависящие от внешнего подзапроса.

SUBSELECT

Первый SELECT в подзапросе.

DEPENDENT SUBSELECT

Первый SELECT, зависящий от внешнего подзапроса.

DERIVED

Наследованная (вторичная) таблица SELECT.

table

Таблица, к которой относится выводимая строка.

type

Тип связывания. Ниже перечислены различные типы связывания, упорядоченные от лучшего к худшему:

system

Таблица содержит только одну строку (= системная таблица). Это - частный случай типа связывания const.

const

Таблица содержит не более одной соответствующей строки, которая будет считываться в начале запроса. Поскольку имеется только одна строка, оптимизатор в дальнейшем может расценивать значения этой строки в столбце как константы. Таблицы const являются очень быстрыми, поскольку они читаются только однажды!

eq_ref

Для каждой комбинации строк из предыдущих таблиц будет cчитываться одна строка из этой таблицы. Это наилучший возможный тип связывания среди типов, отличных от const. Данный тип применяется, когда все части индекса используются для связывания, а сам индекс - UNIQUE или PRIMARY KEY.

ref

Из этой таблицы будут считываться все строки с совпадающими значениями индексов для каждой комбинации строк из предыдущих таблиц. Тип ref

применяется, если для связывания используется только крайний левый префикс ключа, или если ключ не является UNIQUE или PRIMARY KEY (другими словами, если на основании значения ключа для связывания не может быть выбрана одна строка). Этот тип связывания хорошо работает, если используемый ключ соответствует только нескольким строкам.

range

При помощи индекса для выборки строк будут извлечены только строки, находящиеся в заданном диапазоне. Используемый индекс указывается в столбце key. Столбец key_len содержит самую длинную часть ключа, которая была использована. Столбец ref будет содержать значения NULL для этого типа.




Содержание  Назад  Вперед