Akdmeh
@Akdmeh
PHP, Yii2, Music

Как сделать более конкретный поиск Fulltext?

Добрый день!
Сразу начну - да, я знаю о существовании решений типа Sphinx и Elasticsearch и не исключаю, что перейду на них в будущем.
Но хотел немного поэкспериментировать с fulltext-поиском в MySQL, пока проект небольшой.

Суть вот в чем - я делаю поиск IN BOOLEAN MODE; например, песню с названием Nirvana Smell Like Teen Spirit.
Но при этом в результатах запроса будут: вообще песни, где есть слово Nirvana, и песни со словами Like, Teen, Spirit... Конечно, те, в которых будет несколько слов - будут выше, но все же, будет куча лишнего мусора.

Возможно ли сделать так, чтобы возвращались только те результаты, которые хотя бы на половину похожи на поисковую фразу, например, Nirvana Smell Like Teen Spirit (vocal cover), но при этом не искало все песни Nirvana и все, где, к приммеру, встречается слово Like?
Может, это связано с модификатором, который возвращает MATCH... AGAINST? Хотя я так понял, он довольно абстрактный и поможет мало.

Или решение этой задачи невозможно и пора мне изучать Sphinx?
  • Вопрос задан
  • 97 просмотров
Решения вопроса 1
Akdmeh
@Akdmeh Автор вопроса
PHP, Yii2, Music
По моему опыту - используйте Sphinx и не тратьте время на инструменты, которые слабо реализованы.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@RoverWhite
MATCH... AGAINST возвращает релевантность найденного результата.
Кто Вам мешает написать WHERE MATCH... AGAINST > X ?
https://habrahabr.ru/post/40218/
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы