для чего нужны составные индексы:
для запросов WHERE `col1` = 5 AND `col3` < 2
вот для него нужен составной индекс col1+col5
в таких примерах чаще всего приводят аналогию с записной книжкой. представь у тебя в записной книжке сто тысяч адресатов. адресаты упорядочены в алфавитном порядке по возрастанию, по фамилии, затем - имени. (составной индекс, фамилия+имя)
и тебе нужно выбрать всех, у кого: фамилия начинается с буквы П или меньше, и имя <Л
Представил?
Вот всех с фамилией раньше П всё ясно - просто ищешь букву Р, листаешь на страницу ранее и всё что до этой страницы - искомые люди. А как теперь быть с именем? а никак, существующий индекс нам не поможет. Поэтому придётся перелистывать все фамилии и для каждой смотреть, какое имя ей сопоставлено.
Мне помогло разобратся!