You're viewing version 2.16 of the OpenSearch documentation. This version is no longer maintained. For the latest version, see the current documentation. For information about OpenSearch version maintenance, see Release Schedule and Maintenance Policy.
Full-text queries
This page lists all full-text query types and common options. There are many optional fields that you can use to create subtle search behaviors, so we recommend that you test out some basic query types against representative indexes and verify the output before you perform more advanced or complex searches with multiple options.
OpenSearch uses the Apache Lucene search library, which provides highly efficient data structures and algorithms for ingesting, indexing, searching, and aggregating data.
To learn more about search query classes, see Lucene query JavaDocs.
The full-text query types shown in this section use the standard analyzer, which analyzes text automatically when the query is submitted.
The following table lists all full-text query types.
Query type | Description |
---|---|
intervals | Allows fine-grained control of the matching terms’ proximity and order. |
match | The default full-text query, which can be used for fuzzy matching and phrase or proximity searches. |
match_bool_prefix | Creates a Boolean query that matches all terms in any position, treating the last term as a prefix. |
match_phrase | Similar to the match query but matches a whole phrase up to a configurable slop. |
match_phrase_prefix | Similar to the match_phrase query but matches terms as a whole phrase, treating the last term as a prefix. |
multi_match | Similar to the match query but is used on multiple fields. |
query_string | Uses a strict syntax to specify Boolean conditions and multi-field search within a single query string. |
simple_query_string | A simpler, less strict version of query_string query. |