Решение для индекса Mysql (innodb) для лучшей производительности - PullRequest
0 голосов
/ 30 сентября 2011

У меня есть простая таблица с 1 000 000 строк.
в этой строке есть поле даты и времени, которое я всегда запрашиваю в выражении where.

SELECT * from my_table WHERE date_time = 'blabla';

Рекомендуется ли указывать индекс только по этой причине (где утверждение)?

Ответы [ 2 ]

1 голос
/ 30 сентября 2011

Определенно, да.Без этого MySQL должен будет выполнить полное сканирование таблицы (построчно сравнивая date_time с предоставленным значением.)

0 голосов
/ 30 сентября 2011

Да, поместите указатель на поля в предложении where.

Просто взгляните на EXPLAIN EXTENDED (поместите его перед вашим запросом) и посмотрите, к чему на самом деле относится запрос.

Также обратите внимание: не используйте SELECT *, но всегда те поля, которые вы действительно используете

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