У меня та же проблема, что и на этом плакате , однако принятый ответ не решил мою проблему. По сути, я пытаюсь сопоставить свой столбец «заголовок» со ВСЕМИ словами в полнотекстовом поисковом запросе, но он все еще возвращает частичные совпадения. Я недавно перенес свои таблицы базы данных MySQL на новый веб-хост, и мой полнотекстовый поиск работает не так, как на моем старом сервере. Я предполагаю, что может быть разница в настройках, но я не могу найти ее. Полный текст включен, мой ft_min_word_len установлен на 3, и все же следующий запрос MySQL все еще собирает частичные совпадения:
SELECT title, MATCH (title) AGAINST ("more pink") AS relevance
FROM discography
WHERE MATCH (title) AGAINST ("+more +pink" IN BOOLEAN MODE)
ORDER BY relevance DESC
Приведенный выше код возвращает указанный ниже набор, первые 7 заголовков:
Under The Pink & More Pink
Under The Pink Tour All Pass
Under The Pink Tour Guest Pass
Under The Pink Tour Aftershow Pass
Under The Pink Tour After Show Pass
Under The Pink
Under The Pink
Как я могу опустить частичные совпадения? Я что-то упускаю? Результаты будут еще хуже, если я переведу инструкцию SELECT в логический режим, поскольку это устанавливает релевантность в двоичную 1 или 0:
SELECT title, MATCH (title) AGAINST ("+more +pink" IN BOOLEAN MODE) AS relevance
FROM discography
WHERE MATCH (title) AGAINST ("+more +pink" IN BOOLEAN MODE)
ORDER BY relevance DESC
Первые 7 названий:
Under The Pink
Under The Pink
Under The Pink
Under The Pink
Under The Pink
Under The Pink
Under The Pink & More Pink
Несмотря на использование оператора +, он, похоже, не сужает мои результаты. Любая помощь будет приветствоваться, большое спасибо заранее.