MySQL полный текстовый поиск слов с тремя или менее буквами

Я пытаюсь получить полный текстовый поиск (в логическом режиме), чтобы получить слова с тремя буквами или меньше.

В настоящее время, если я ищу что-то вроде "NBA", я не получаю никаких результатов.

Однако, если я добавлю оператор wild card "*" в поисковый запрос, я получаю результаты.

Я также прочитал, что вы можете удалить ограничение на три слова в my.ini, но мне интересно, есть ли лучший способ сделать это на лету.

Ответ 1

Этот раздел руководства может вас заинтересовать: 11.8.6. Точная настройка полнотекстового поиска MySQL (со ссылкой на его часть):

Минимальная и максимальная длины слова, подлежащие индексированию, определяются ft_min_word_len и ft_max_word_lenсистемные переменные. минимальное значение по умолчанию - четыре персонажи; максимальным значением по умолчанию является зависит от версии. Если вы меняете либо значение, вы должны перестроить свой Индексы FULLTEXT.
Например, если вы хотите, чтобы трехсимвольные слова были для поиска можно установить ft_min_word_len, путем размещения следующие строки в файле опций:

[mysqld]
ft_min_word_len=3

Затем вы должны перезапустить сервер и перестройте свои индексы FULLTEXT.

(Вы должны прочитать эту страницу, для получения дополнительной информации я не копировал-вставляю;-))