Какие индексы я должен использовать с MySQL для отношения m: n? - PullRequest
2 голосов
/ 10 марта 2011

У меня есть две таблицы, a и b, и я хочу создать отношение m: n между столбцами.
Естественно, я создаю третью таблицу ab со столбцами a_id и b_id.

Поскольку все пары должны быть уникальными, я создаю первичный индекс для обоих полей и один btree-index для каждого поля. Теперь у меня есть 3 индекса над таблицей с двумя полями, и я думаю, что это излишне. Действительно ли нужны индексы для обоих столбцов или MySQL обрабатывает подобные случаи особым образом?

1 Ответ

3 голосов
/ 10 марта 2011

Ваш основной индекс выше (a_id, b_id) также будет охватывать поиск только по a_id, поэтому нет необходимости индексировать a_id отдельно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...