Допустим, есть какая-то база с +100500 строками, значения из которой надо присваивать единице контента, допустим, организации в каталоге организаций. Пусть (для примера) это будет
ОКТМО.
Или например, у нас есть каталог ВУЗов и нужно присвоить несколько значений каждому ВУЗу из ОКСО. Это просто грубые примеры, чтобы было ясно в чем суть.
Понятно, что в поле "Список — мультивыбор" такой справочник не засунешь. Да и записи из справочника нужно удалять/добавлять периодически.
+ оставить возможность для фильтрации по такому полю для юзера.
Наверное, это еще не бигдата. Тем не менее. Как это реализовать максимально производительно на базе MySQL? "Расширяемый список" с аддонса — что-то похожее, но там все строки выводятся сразу.
Возьмем пример строчки ОКТМО:
id code name
8 14605408 Афанасьевское
Юзер начинает вводить в фильтр "Афан" — делаем аякс-запрос на сервер, и возвращаем из таблицы все записи начинающиеся на "афан". Собственно, какой запрос MySQL здесь лучше использовать? И как правильно построить индексы для такой таблицы?
SELECT * FROM `oktmo` WHERE name LIKE 'афан%'
Плохой вариант?