Basic Usage

Boolean queries filter documents based on the logical relationships defined by their subqueries, considering:

  • Documents that satisfy all must conditions.
  • Documents that satisfy none of the must_not conditions.
  • Documents that satisfy at least one condition from either must or should.

Boolean queries are a powerful way to combine the results of several different queries.

Here’s the code wrapped in a CodeGroup with both SQL function and JSON syntax:

must

A query object or an ARRAY of query objects as conditions which must be matched.

must_not

A query object or an ARRAY of query objects as conditions which must not be matched.

should

A query object or an ARRAY of query objects as conditions of which at least one must be matched.

In order for a boolean query to return a result, one of must or should must be provided. must_not acts as a mask and does not produce a result set.