MySQL делает полный экран таблицы - PullRequest
0 голосов
/ 28 февраля 2011

Я пытаюсь выяснить, почему следующий SQL имеет тип ALL для таблицы категорий c.

EXPLAIN SELECT
 t.todo_id,
 t.name todo_name,
 c.name category_name
FROM
 todos t,
 categories c
WHERE t.category_id = c.category_id

Таблица todos имеет индекс на category_id и todo_idпервичный ключ.Столбец category_id в таблице категорий является первичным ключом.

В EXPLAIN указан PRIMARY в качестве возможного ключа для таблицы категорий, но он не используется.

Спасибо.

1 Ответ

1 голос
/ 01 марта 2011

Все просто.Ваш запрос выбирает все данные из ваших таблиц.Если вы добавите оператор WHERE, все будет хорошо.

...