Как настроить sphinx, чтобы индексировать фразы вместо слов?

Я использую поисковую систему sphinx и php. В моей таблице SQL у меня есть что-то вроде этого. mother keyboard, india pakistan, stakoverflow god, Теперь, когда я запускаю индексатор над ним. Он индексирует «мать и клавиатура» как разные слова. Я хочу, чтобы их искали как одну фразу. Я хочу это: он не будет искать, если только mother приходит или только father приходит. Я буду искать только если mother keyboard приходит или keyboard mother приходит.

заранее спасибо

0

Решение

Вы можете попытаться найти точную фразу (что потребует, чтобы вы включили index_exact_words).

Итак, с помощью SphinxQL:

SELECT * FROM index WHERE MATCH('="mother keyboard" | ="keyboard mother"');

Или оператор NEAR может помочь:

SELECT * FROM index WHERE MATCH('mother NEAR/1 keyboard');

Документация Sphinx гласит, что NEAR будет «соответствовать документу, когда оба подвыражения найдены в N словах друг друга, независимо от того, в каком порядке».

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

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]