minimum_should_match パラメータ
minimum_should_match
パラメータの可能な値:
タイプ | 例 | 説明 |
---|---|---|
整数 | 3 |
オプションのクローズの数に関係なく、固定値を示します。 |
負の整数 | -2 |
オプションのクローズの合計数からこの数を引いたものが必須であることを示します。 |
パーセンテージ | 75% |
オプションのクローズの合計数のこのパーセントが必要であることを示します。パーセンテージから計算された数値は切り捨てられ、最小値として使用されます。 |
負のパーセンテージ | -25% |
オプションのクローズの合計数のこのパーセントが欠落してもよいことを示します。パーセンテージから計算された数値は切り捨てられ、合計から引かれて最小値を決定します。 |
組み合わせ | 3<90% |
正の整数の後に小なり記号が続き、以前に述べた指定子のいずれかが続く場合、条件付き仕様です。オプションのクローズの数が整数と等しい(またはそれ以下)場合、すべてが必須ですが、整数を超える場合は仕様が適用されます。この例では、1から3のクローズがある場合はすべて必須ですが、4以上のクローズの場合は90%のみが必須です。 |
複数の組み合わせ | 2<-25% 9<-3 |
複数の条件付き仕様はスペースで区切ることができ、それぞれは前の数より大きい数に対してのみ有効です。この例では、1または2のクローズがある場合は両方が必須であり、3-9のクローズがある場合は25%を除いてすべてが必須であり、9以上のクローズがある場合は3を除いてすべてが必須です。 |
注意:
パーセンテージを扱う際、エッジケースで異なる動作を得るために負の値を使用できます。4つのクローズを扱う場合、75%と-25%は同じ意味ですが、5つのクローズを扱う場合、75%は3つが必須であり、-25%は4つが必須であることを意味します。
仕様に基づく計算がオプションのクローズが必要ないと判断した場合、検索時には通常のBooleanQueriesに関するルールが依然として適用されます(必須のクローズを含まないBooleanQueryは、少なくとも1つのオプションのクローズに一致する必要があります)。
計算結果がどのような数値に達しても、オプションのクローズの数を超える値や1未満の値は決して使用されません。(つまり、計算結果がどれほど低くても高くても、必要な一致の最小数は決して1未満またはクローズの数を超えることはありません。)