Он использует индексы столько, сколько может (оба первичных ключа для вашего левого соединения).Основной проблемой является LIKE «% a%», потому что в этом случае он не может использовать индекс (если бы он был «%», он мог бы использовать индекс для имени пользователя и имени).То, что вы можете попробовать (не уверен, что это ускорит процесс), это использовать concat (usr.username, prof.name) как '% a%', но вы, вероятно, не заметите никакой разницы.
Fullтекстовый индекс не будет работать, потому что полнотекстовый индекс полезен при поиске целого слова.
В любом случае, для вашего запроса ваши индексы по имени и имени пользователя бесполезны и просто занимают место, поэтому я быудали их.Если LIKE '%' удовлетворяет вашу потребность, тогда эти индексы имеют смысл.
Если «%» не удовлетворяет вашим потребностям, вы можете взглянуть на другие варианты, например, кэш запросов MySQL (если вы ожидаете частое повторение запросов).