@baimkin

FullText поиск последовательности слов MySQL?

Добрый вечер.

Подскажите как правильно написать FullText поиск последовательности символов.
Ищем в тексте:
Газонокосилка электрическая WORTEX LM 3213-1 P бензиновая
текст запроса:
LM32131P
LM 32131P
LM 3213 1P

И поиск слов в любой последовательности но чтобы они все были рядом друг с другом:
Ищем в тексте:
Ноутбук Acer Extensa 15 EX215-31-P41T NX.EFTER.006 15"(Intel Pentium Quad Core N5000 1.1 ГГц4 ГБ)
текст запроса:
31 P41T EX215
P41T EX215 31
EX215-NX-31-P41T - вот такой запрос не должен найтись в тексте т.к не все слова будут стоять рядом друг с другом

Пока использую такие запросы, но они находят не все нужные результаты и могут находить лишние не нужные:
SELECT * FROM products WHERE MATCH(ProductName) AGAINST('"LM 3213 1 P"' IN BOOLEAN MODE);
Или для поиска всех слов вот такой:
SELECT * FROM products WHERE MATCH(ProductName) AGAINST('+EX215 +31 +P41T' IN BOOLEAN MODE);
  • Вопрос задан
  • 81 просмотр
Пригласить эксперта
Ответы на вопрос 1
2ord
@2ord
Не знаю насколько подходит Mysql в этом случае. Почему не взять поисковые движки Solr/Sphinx?
Модель товара в любом случае трудно искать. Ее скорее стоило бы искать алгоритмом Левенштейна. А вот название товара должно хорошо находиться поисковыми движками.
Название товара первично, а модель имеет второстепенное значение при поиске товаров в магазине.
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы