「Stack Overflow」を検索すると、Sphinx は「Stackoverflow」に一致する結果を表示しません。
これは、Sphinx が「Stackoverflow」を 1 つの単語としてインデックス付けするためです...一方、クエリは 2 つの単語です。
これを修正する方法を知っている人はいますか?(Google のように...彼らはクエリに参加できます!)
ワードフォーム機能を使用して、単語を別の単語にマップしたり、多くの単語を 1 つの単語に一致させたりできます。修正したい単語がたくさんある場合は、これを行うことができます。この機能を使えば、検索は 1 回で済み、おそらく「or」検索よりも高速になると思います。
Sphinx に供給されるデータを改ざんする必要はありません。必要なことは、フォーム処理コードで Sphinx への検索リクエストをわずかに変更して、検索語のさまざまな組み合わせを含め、SPH_MATCH_EXTENDED マッチング モードを使用することだけです。特に、あなたの例では
(Stack Overflow) | stackoverflow
sphinx に送信する前に、検索用語を 1 つの単語に結合することはできませんか? 検索用語のすべての順列、つまりmy search term
as mysearch
、mysearchterm
、およびを実行する必要がありますが、それでうまくsearchterm
いくようです。