@Peyoter

Не работают индексы при простом запросе?

Таблица в 1 млн строк.

Запрос:

select * from phones where phone = 500;
Скорость работы ~ 10 секунд.

Проверка через explain показывает:
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |
+----+-------------+--------+------+---------------+------+---------+------+----------+-------------+
| 1 | SIMPLE | phones | ALL | phone | NULL | NULL | NULL | 10000000 | Using where |
+----+-------------+--------+------+---------------+------+---------+------+----

force index ничего не дает.... Ключ не определяется. Нужно обновить в данной таблице около 50 000 записей, а 100 часов ождания как бы нету, как быть?
  • Вопрос задан
  • 400 просмотров
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
А поле `phone` случаем не текстового типа? Если да, то сравнение должно быть с текстом, иначе включается приведение типа для поля и индекс не работает.
SELECT `name` FROM `phones` WHERE `phone` = '500'
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Therapyx
@Therapyx
Data Science
Может я чего-то не понимаю, но где таблица после from? и почему после "name" ставишь еще раз * ?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы