MYSQL Полнотекстовый поиск и LIKE - PullRequest
9 голосов
/ 17 сентября 2009

Я работаю с полнотекстовым поиском MySQL, но мне не хватает ситуаций, когда ваша строка является частью слова в поле. Если мое поле "Нью-Йорк Таймс" и я ищу "Время", я не получаю результатов. Хакерский способ решить эту проблему - настроить два запроса: один для полнотекстового поиска, а другой для:

SELECT * FROM ___ WHERE 'string' LIKE %searchterm% 

Можно ли настроить полнотекстовый поиск для решения этой проблемы, чтобы мне не нужно было выполнять дополнительный запрос?

Ответы [ 2 ]

7 голосов
/ 18 сентября 2009

Вы можете использовать подстановочные знаки в вашем полнотекстовом поиске. Подробнее здесь

SELECT * FROM _____ WHERE MATCH (title) AGAINST ('time*' IN BOOLEAN MODE);
2 голосов
/ 17 сентября 2009

Я в основном отказался от полнотекстового поиска MySql в пользу Sphinx - специализированной системы полнотекстового поиска, которая реализует сетевой протокол MySql, так что вы можете «вставить» его между вашими клиентами и Сервер MySql, не теряющий ничего и приобретающий богатые, серьезные полнотекстовые возможности. Может быть, это не подходит для ваших нужд (что вы не совсем выразили), но я думаю, что это по крайней мере работа проверяет!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...