Редактировать ... Я только что понял, что вы спрашиваете о sqlite. Я бы сказал, что тот же принцип хранения очень маленькой объединенной таблицы в кеше все же будет применяться.
При объединении таблиц сервер SQL будет помещать соответствующее содержимое одной таблицы в кеш, если это возможно. Ваши 20-30 фраз наверняка уместятся в кеше, так что на самом деле не будет смысла индексировать. Индексирование полезно для поиска значений, но SQL-сервер уже будет иметь эти значения в кеше. Кроме того, поскольку сервер SQL читает данные по странице за раз (страница размером 8 КБ), он сможет прочитать всю таблицу за одно чтение.
Когда вы создаете временную таблицу, убедитесь, что вы используете тот же тип данных, чтобы SQL-серверу не приходилось преобразовывать значения в соответствие.