I have a string column that I want to be part of a multi-column index in a large table in MySQL. There can be only a few different values in this column. If I knew these values in advance, I could make this column integer and a foreign key to another small table that lists all possible values. But I don't know them in advance.
Does it make sense to index on a string column: i.e. does MySQL somehow avoid repetition of the index column value for each row when storing internally?