RSS
 

MySQL индексы и ORDER BY

После установки одного из модулей Друпала, выдался вот такой запрос:

SELECT node.nid AS nid,
family_individual.lastname AS family_individual_lastname,
family_individual.firstname AS family_individual_firstname,
family_individual.middlename AS family_individual_middlename,
family_individual.gender AS family_individual_gender,
family_individual.birthdate AS family_individual_birthdate,
family_individual.deathdate AS family_individual_deathdate
FROM dru_node node
LEFT JOIN dru_family_individual family_individual
ON node.nid = family_individual.nid
WHERE (node.TYPE IN ('family_individual')) AND (node.STATUS <> 0)
ORDER BY family_individual_lastname DESC LIMIT 0, 40

На таблице с 89 тыс записями он отрабатывает за 3-7 секунд. Почему так, мне пока не ясно.

В ходе разбирательств пока выяснилось, что в этом же запросе INNER JOIN & RIGHT JOIN работают моментально (0.003-0.03 сек) .