次のようなフィールド テキストを持つ 5 つのドキュメントがあるとします。
- 赤い家は美しい
- 家は小さい
- 赤い魚
- 赤と黄色の家は大きい
「赤い家」を検索した場合、ランクが次のようなドキュメントを取得するには、どのようなクエリを使用すればよいですか?
- 赤い家は美しくて大きい [マッチング: 赤い家]
- 赤と黄色の家は大きい [マッチング: 赤 xx 家]
- the house is little [マッチング: 家]
- 赤い魚 [マッチング: 赤]
必要なのは、検索したフレーズに一致するドキュメントに高いランクを付け、フレーズの一部だけが検索されたドキュメントに低いスコアを与えることです。文字列クエリには 3 つ以上の用語が含まれている場合もあります。
これは、各用語が出現するかどうかを示し、用語が近いほどスコアが高くなる PhraseQuery のようなものです。
TermQuery を使用して PhraseQuery を構成しようとしましたが、必要な結果が得られません。
どのようにできるのか?
ありがとう