My vote is that this probably doesn't make sense in your scenario. You say that this table with one column will be merged with another table to filter records in another table, so why not just delete this table, index another column in another table and filter it out?
Essentially why are you writing:
SELECT * FROM manycols M INNER JOIN singlecol s ON m.id = s.id WHERE s.id = 123
If so:
SELECT * FROM manycols m WHERE m.id = 123
Suppose the argument is that manycols has a million lines, and singlecol has a thousand. You want thousands of matching lines, this is a multi-column that would need to be indexed then for the benefit.
Suppose the argument is all lines except those specified in singlecol; you can index singlecol, but the optimizer can simply just load the entire table into a hash file, so indexing will not necessarily help
There seems to be another way to do what you need to completely remove this single column table.
source share