私の Lucene 検索では、特定のセットの一部ではない特定のフィールド要素でインデックス付けされたすべてのドキュメントを除外したいと考えています。
たとえば、私のドキュメントが図面を表しているとしましょう。カラーフィールドがあります。色フィールドでは、図面で使用されるすべての色にインデックスを付けます。ここで、5 つの色にアクセスできるとします。赤、青、緑、紫、茶色。これらの色を使用する図面のみを取得したいので、上記の色以外の色の図面は除外する必要があります。これらすべての色を使用し、これらすべての色のみを使用するすべての図面が必要な場合は、ドキュメントに「色の数」用の新しいフィールドを追加し、各色に MUST 用語クエリを追加してブールクエリを作成できます。カウントを色の数として MUST ブールクエリを追加します。しかし、上記の 5 色の組み合わせを持つすべてのドキュメントも取得したいと考えています。したがって、完全に茶色で行われた図面も取得されます。
私は何千もの色を持っていることに注意してください。したがって、各色のフィールドを作成してから、私の5色以外のすべての人にMUST_NOTを実行することもオプションではありません.
どうもありがとう!