BoolQuery は、ブール論理を使用して複数のサブクエリを単一の複合クエリに結合します。各サブクエリは任意のタイプで指定でき、別の BoolQuery を含むことも可能です。
データ構造
message BoolQuery {
repeated Query must_queries = 1;
repeated Query must_not_queries = 2;
repeated Query filter_queries = 3;
repeated Query should_queries = 4;
optional int32 minimum_should_match = 5;
}
|
パラメーター |
タイプ |
必須 |
説明 |
|
must_queries |
repeated Query |
いいえ |
AND — 行が満たさなければならないサブクエリです。このリスト内のすべての条件に一致する必要があります。 |
|
must_not_queries |
repeated Query |
いいえ |
NOT — 行が満たしてはならないサブクエリです。このリスト内のいずれかの条件に一致する行は除外されます。複数のサブクエリが指定されている場合、いずれにも一致しない行のみが返されます(NOT(A OR B) と同等)。 |
|
filter_queries |
repeated Query |
いいえ |
AND (スコアなし) — 行が満たさなければならないサブクエリであり、must_queries と同様ですが、一致しても関連性スコアには寄与しません。 |
|
should_queries |
repeated Query |
いいえ |
OR — 行が満たすことができるオプションのサブクエリです。行は minimum_should_match で指定された最小条件数以上を満たす必要があります。より多くの条件を満たす行ほど、関連性スコアが高くなります。 |
|
minimum_should_match |
int32 |
いいえ |
行が満たさなければならない should_queries 条件の最小数です。should_queries のみが指定されている場合、デフォルト値は 1 です。must_queries、must_not_queries、または filter_queries のいずれかが同時に指定されている場合、デフォルト値は 0 です。 |