проблема оптимизации индекса mysql - PullRequest
1 голос
/ 27 июля 2011

У меня есть запрос, как показано ниже.

SELECT a,b,c,d 
FROM table_name  
WHERE e=1 AND f=0 
GROUP BY d 
ORDER BY id DESC LIMIT 5

когда я проиндексировал (e, f, d) время запроса: 4 сек.

когда я проиндексировал (d, e, f) время запроса: 20 сек.

Так что я понимаю, что порядок столбцов индекса важен. Какой индекс будет лучше для MySQL?

1 Ответ

1 голос
/ 27 июля 2011

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

...