複合クエリ

複合クエリは、他の複合クエリまたはリーフクエリをラップし、それらの結果やスコアを組み合わせたり、動作を変更したり、クエリからフィルターコンテキストに切り替えたりします。

このグループのクエリは次のとおりです:

  • bool クエリ
  • 複数のリーフまたは複合クエリ句を組み合わせるためのデフォルトクエリで、mustshouldmust_not、またはfilter句として使用されます。 mustおよびshould句はスコアが組み合わされます—一致する句が多いほど良い—一方、must_notおよびfilter句はフィルターコンテキストで実行されます。
  • boosting クエリ
  • positiveクエリに一致するドキュメントを返しますが、negativeクエリにも一致するドキュメントのスコアを減少させます。
  • constant_score クエリ
  • 別のクエリをラップするクエリですが、フィルターコンテキストで実行されます。すべての一致するドキュメントには同じ「定数」_scoreが与えられます。
  • dis_max クエリ
  • 複数のクエリを受け入れ、いずれかのクエリ句に一致するドキュメントを返すクエリです。boolクエリはすべての一致するクエリからのスコアを組み合わせるのに対し、dis_maxクエリは単一の最も一致するクエリ句のスコアを使用します。
  • function_score クエリ
  • 人気、最近性、距離、またはスクリプトで実装されたカスタムアルゴリズムなどの要因を考慮して、メインクエリによって返されるスコアを修正します。