SOLRインストールでは、複数単語の検索語句を使用してフィールドを検索すると、SOLRは検索のすべての用語を含むドキュメントを返すようにしますが、正確な順序である必要はありません。Solr - すべての用語を任意の順序で含む結果
たとえば、Brown Chicken Brown Cowのタイトルを検索すると、タイトルフィールドの順序に関係なく、Brown、Chicken、Cowのすべての語句を含むすべてのドキュメントを検索したいと思います。たとえば、「チキンと牛には茶色の糞があります」というタイトルはクエリと一致する必要があります。 AFAIK、これはGoogleが検索を実行する方法です。
私は、次のクエリ形式で実験しています
1. Title:Brown AND Title:Chicken
2. Title:Brown AND Chicken
3. Title:Brown+Chicken
は、私は結果によって非常に混乱しています。場合によっては、最初の2つのクエリは同じ正確な結果セットを返します。他の例では、最初のバージョンは多くの結果を返し、2番目のバージョンはnoneを返します。 3番目のバージョンは私のニーズを満たすと思われますが、私はクエリの異なる意味で混乱しています。
すべてのテストは、text_en型のフィールドに対して実行されています。
<field name="Title" multiValued="false" type="text_en" indexed="true" stored="true"/>
したがって、このタイプの検索にはどのようなSOLRクエリが最適ですか?また、Solr.NETにユーザーが入力した検索語をこの形式の形式に変換する簡単な方法はありますか?
また、デフォルトでSOLRは検索フレーズの順番と一致するドキュメントの関連性スコアを高くしますか?そうでない場合は、それを実現するために引き出すべき正しいレバーは何ですか?
編集: 私の混乱の一部は、デフォルトフィールド対ではないデフォルトのフィールドに対して検索することで引き起こされました。これを知って、一貫して動作する唯一のフォーマットは、最初のフォーマットです。
あなたの投稿に署名やタグラインを追加しないでください(http://stackoverflow.com/faq#signatures)。 – meagar