0

キーワード (重み 10) とテキスト (重み 1) の 2 つのフィールドがあります。

3 つのレコードを見てみましょう。

A: キーワード = "何か、幸せな猫"、テキスト = "これは A"

B: キーワード = "どこにあるのか、何匹かの犬"、テキスト = "これは Bあるもの"

C: キーワード = "あるものがある場所", テキスト = "これは Bあるもの"

何かを検索するとき、B と C の上に A レコードが必要です。

Sphinx では、他の項目よりも下に A が表示されます。しかし、A はキーワードに完全一致 (カンマは本当の意味) があるため、唯一の正しい答えです。

それに到達するようにSphinxを構成する方法は? あらゆる種類のテキストの前処理が許可されます。

4

2 に答える 2

1

必要に応じて、さまざまなランキング モードを確認できます。

SPH_RANK_SPH04ランキング モードを参照してください。これは期待どおりに動作するはずです。使用している sphinx のバージョンについて言及する必要があります。

ランキングモードの詳細はこちら

于 2013-01-18T10:55:40.330 に答える
0

あなたの例では、Cが最も関連性があります。

検索語を引用符で囲んで完全一致でフィルタリングできます。一致モードを SPH_MATCH_MODE_EXTENDED2 に設定する必要があります。これは、正確な文字列を含むドキュメントを取得するように sphinx に指示します。

拡張検索構文をご覧になることをお勧めします。

于 2013-01-18T11:53:18.617 に答える