У меня есть очень простой выбор, как это:MySQL индекс диапазона
SELECT * FROM table
WHERE column1 IN (5, 20, 30);
на column1 является seted индекса, после объяснения запроса является индексом используется, все выглядит нормально.
, но если есть больше, чем три значения в диапазоне, например:
SELECT * FROM table
WHERE column1 IN (5, 20, 30, 40);
индекса не используются и выберите прогоны через все записи. Я делаю что-то неправильно? спасибо
Очень правдиво, было бы также полезно периодически вычислять статику и после значительных изменений данных, чтобы оптимизатор решил правильно. +1 – Dheer 2008-12-15 11:13:15