Тъй като трябва да зареди цялата таблица, за да отговори на заявката, а сортирането на 4 елемента е евтино, оптимизаторът на заявки може просто да избягва докосването на индекса. Все още ли се случва с по-големи маси?
Обърнете внимание, че колона varchar(3000) не може да бъде покриващ индекс, тъй като MySQL няма да включва повече от първите 768 или така байта от varchar в индекс.
Ако искате заявката да чете само индекса, индексът трябва да има всяка колона, която сте SELECT
за в него. В innodb това трябва да започне да работи за вашата таблица с две колони, след като направите textcol достатъчно малък; в MyISAM ще трябва сами да включите колоната с първичен ключ, като CREATE INDEX textcolindex ON test (textcol,id);