MySQL, в зависимости от используемого вами движка, может работать ужасно медленно при использовании индексов varchar, особенно InnoDB. MyISAM будет довольно быстрым, но не совместимым с ACID, поэтому вы должны отказаться от него.
Это, как правило, справедливо для всех СУБД, целые числа всегда быстрее строк (вы сравниваете их с помощью artithmetical über быстрых операций ЦП вместо сравнения строк char с char).
Когда вы продолжаете работу с JOIN select в SQL, всегда делайте это в индексированных полях, есть ли целые числа или нет, это, вероятно, самый важный совет для вас.
РЕДАКТИРОВАНИЕ: На практике большинство СУБД оптимизируют индексы varchar для чтения, InnoDB использует BTREE и хэшированные строки, что делает его довольно быстрым в операциях чтения. InnoDB все еще страдает от медленной записи индексов varchar, я не могу найти связанные ошибки, но они все еще существуют как открытые ошибки MySQL в официальном трекере ошибок MySQL. Всегда аннулируйте индексы varchar при планировании использования InnoDB.