Мне интересно, можно ли выполнить поиск MATCH () ПРОТИВ () (полнотекстовый) таким образом, чтобы слова, которые не находятся рядом друг с другом, были расположены в определенном порядке? На моем сайте, когда пользователи вводят слова в двойных кавычках, при поиске отображаются только те слова, которые имеют эти слова в определенном порядке. Например, если это поисковый запрос:
"pizza road"
вернется «Лучшая пицца в будущем», но не «Дорога к лучшей пицце».
Я знаю, что режим BOOLEAN позволяет выполнять поиск по фразе, но это означает, что слова должны быть рядом друг с другом (разделенные пробелом, точкой, запятой и т. Д.), Которые, очевидно, не будут возвращаться ни одним из результаты, перечисленные выше: http://dev.mysql.com/doc/refman/5.5/en/fulltext-boolean.html
В настоящее время я использую regexp для выполнения этого действия, но само собой разумеется, что это плохой способ поиска в столбце varchar (бессмысленно полнотекстовой индексации), даже если он немного меньше 200 000 строк. Так что я хотел бы знать, возможно ли выполнить тот же поиск, используя только MATCH () AGAINST ()? Или я должен объединить это с регулярным выражением? Или есть еще один метод, о котором я не думал?
Я могу предоставить образцы таблиц / кодов по запросу.
Заранее спасибо!