2015-06-03 19:59:22 -04:00
|
|
|
[[compound-queries]]
|
|
|
|
== Compound queries
|
|
|
|
|
|
|
|
Compound queries wrap other compound or leaf queries, either to combine their
|
|
|
|
results and scores, to change their behaviour, or to switch from query to
|
|
|
|
filter context.
|
|
|
|
|
|
|
|
The queries in this group are:
|
|
|
|
|
|
|
|
<<query-dsl-bool-query,`bool` query>>::
|
|
|
|
The default query for combining multiple leaf or compound query clauses, as
|
|
|
|
`must`, `should`, `must_not`, or `filter` clauses. The `must` and `should`
|
|
|
|
clauses have their scores combined -- the more matching clauses, the better --
|
|
|
|
while the `must_not` and `filter` clauses are executed in filter context.
|
|
|
|
|
2019-07-18 10:18:11 -04:00
|
|
|
<<query-dsl-boosting-query,`boosting` query>>::
|
|
|
|
Return documents which match a `positive` query, but reduce the score of
|
|
|
|
documents which also match a `negative` query.
|
2015-06-03 19:59:22 -04:00
|
|
|
|
2019-07-18 10:18:11 -04:00
|
|
|
<<query-dsl-constant-score-query,`constant_score` query>>::
|
|
|
|
A query which wraps another query, but executes it in filter context. All
|
|
|
|
matching documents are given the same ``constant'' `_score`.
|
|
|
|
|
|
|
|
<<query-dsl-dis-max-query,`dis_max` query>>::
|
2015-06-03 19:59:22 -04:00
|
|
|
A query which accepts multiple queries, and returns any documents which match
|
|
|
|
any of the query clauses. While the `bool` query combines the scores from all
|
|
|
|
matching queries, the `dis_max` query uses the score of the single best-
|
|
|
|
matching query clause.
|
|
|
|
|
|
|
|
<<query-dsl-function-score-query,`function_score` query>>::
|
|
|
|
Modify the scores returned by the main query with functions to take into
|
|
|
|
account factors like popularity, recency, distance, or custom algorithms
|
|
|
|
implemented with scripting.
|
|
|
|
|
|
|
|
|
|
|
|
include::bool-query.asciidoc[]
|
|
|
|
include::boosting-query.asciidoc[]
|
2019-07-18 10:18:11 -04:00
|
|
|
include::constant-score-query.asciidoc[]
|
|
|
|
include::dis-max-query.asciidoc[]
|
|
|
|
include::function-score-query.asciidoc[]
|