Если у меня есть таблицы типа ...
tblResource
-----------
id
r_name
tblCategory
--------
id
c_name
tblTag
-------
id
t_name
tblResCatTag
------------
r_id
c_id
t_id
Я прочитал только отдельные индексы, которые читаются в таблицах, и порядок значений важен, поэтому, если я индексирую tblResCatTag, как ...
ADD INDEX (rid, cid, t_id);
и иметь запрос типа ...
SELECT r.r_name, c.c_name, t.t_name
FROM tblResource r
LEFT OUTER JOIN tblResCatTag rtc ON r.id = rtc.r_id
LEFT OUTER JOIN tblCategory c ON rtc.c_id = c.id
LEFT OUTER JOIN tblTag t ON rtc.t_id = t.id
Будет ли индекс использоваться в двух последних соединениях или он будет игнорироваться, так как rid является первым элементом виндекс