- Винаги използвайте EXPLAIN(QUERY), за да профилирате и разберете как MySQL анализира вашите заявки.
- Проверете вашите ИНДЕКСИ, MySQL просто избира грешните индекси за избраното.
-
Опитайте да използвате подсказки SELECT и INDEX. http://dev.mysql.com/doc/refman /5.1/en/index-hints.html .
ИЗБЕРЕТЕ * ОТ таблица1 ИЗПОЛЗВАЙТЕ ИНДЕКС (col1_index,col2_index) WHERE col1=1 AND col2=2 AND col3=3;
SELECT * FROM table1 IGNORE INDEX (col3_index)WHERE col1=1 AND col2=2 AND col3=3;