Skip to content

Выборка из базы данных по FULLTEXT INDEX возвращает нулевой результат

Выборка из базы данных по FULLTEXT INDEX возвращает нулевой результат

Суть проблемы: выборка MATCH AGAINST при использовании IN NATURAL LANGUAGE MODE возвращет нулевой результат.

Как правило, подобная проблема возникает при поиске по очень короткому ключу(3 символа и меньше), в случае если ключевое слово находится в списке stopwords или слово встречается более чем в 50% записей.

Также, как оказалось, данная проблема возникает из-за того, что при создании полнотекстового индекса порядок колонок, участвующих в индексе был указан не в том виде, в каком он указана в качестве значения MATCH. Выдержка из официальной документации mysql по данному вопросу:

The fulltext index should contain exactly the same number of columns, in same order as mentioned in MATCH clause.