- All Implemented Interfaces:
NamedWriteable
,VersionedNamedWriteable
,Writeable
,QueryBuilder
,Rewriteable<QueryBuilder>
,ToXContent
,ToXContentObject
MatchQueryBuilder
but supports multiple fields.-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from interface org.elasticsearch.xcontent.ToXContent
ToXContent.DelegatingMapParams, ToXContent.MapParams, ToXContent.Params
Nested classes/interfaces inherited from interface org.elasticsearch.common.io.stream.Writeable
Writeable.Reader<V>, Writeable.Writer<V>
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final boolean
static final int
static final Operator
static final int
static final int
static final MultiMatchQueryBuilder.Type
static final ZeroTermsQueryOption
static final String
Fields inherited from class org.elasticsearch.index.query.AbstractQueryBuilder
boost, BOOST_FIELD, DEFAULT_BOOST, NAME_FIELD, queryName
Fields inherited from interface org.elasticsearch.index.query.Rewriteable
MAX_REWRITE_ROUNDS
Fields inherited from interface org.elasticsearch.xcontent.ToXContent
EMPTY_PARAMS
-
Constructor Summary
ConstructorsConstructorDescriptionMultiMatchQueryBuilder
(Object value, String... fields) Constructs a new text query.Read from a stream. -
Method Summary
Modifier and TypeMethodDescriptionanalyzer()
Explicitly set the analyzer to use.boolean
Whether phrase queries should be automatically generated for multi terms synonyms.autoGenerateSynonymsPhraseQuery
(boolean enable) protected boolean
doEquals
(MultiMatchQueryBuilder other) Indicates whether some otherQueryBuilder
object of the same type is "equal to" this one.protected int
protected org.apache.lucene.search.Query
doToQuery
(SearchExecutionContext context) protected void
doWriteTo
(StreamOutput out) void
doXContent
(XContentBuilder builder, ToXContent.Params params) Adds a field to run the multi match against.Adds a field to run the multi match against with a specific boost.fields()
Add several fields to run the query against with a specific boost.static MultiMatchQueryBuilder
fromXContent
(XContentParser parser) Sets the fuzziness used when evaluated to a fuzzy query type.fuzzyRewrite
(String fuzzyRewrite) boolean
fuzzyTranspositions
(boolean fuzzyTranspositions) Sets whether transpositions are supported in fuzzy queries.The minimal version of the recipient this object can be sent togetType()
Returns the type (for testing)Returns the name of the writeable objectboolean
lenient()
lenient
(boolean lenient) Sets whether format based failures will be ignored.int
maxExpansions
(int maxExpansions) When using fuzzy or prefix type query, the number of term expansions to use.minimumShouldMatch
(String minimumShouldMatch) operator()
Sets the operator to use when using a boolean query.int
prefixLength
(int prefixLength) int
slop()
slop
(int slop) Set the phrase slop if evaluated to a phrase query type.tieBreaker
(float tieBreaker) Tie-Breaker for "best-match" disjunction queries (OR-Queries).tieBreaker
(Float tieBreaker) Tie-Breaker for "best-match" disjunction queries (OR-Queries).type()
Sets the type of the text query.Sets the type of the text query.value()
zeroTermsQuery
(ZeroTermsQueryOption zeroTermsQuery) Methods inherited from class org.elasticsearch.index.query.AbstractQueryBuilder
addValidationError, boost, boost, boostAndQueryNameToXContent, checkNegativeBoost, declareStandardFields, doRewrite, equals, extractInnerHitBuilders, getName, hashCode, parseInnerQueryBuilder, parseInnerQueryBuilder, printBoostAndQueryName, queryName, queryName, readQueries, requireValue, rewrite, throwParsingExceptionOnMultipleFields, toQuery, toString, toXContent, writeQueries, writeTo
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.elasticsearch.xcontent.ToXContentObject
isFragment
-
Field Details
-
NAME
- See Also:
-
DEFAULT_TYPE
-
DEFAULT_OPERATOR
-
DEFAULT_PHRASE_SLOP
public static final int DEFAULT_PHRASE_SLOP- See Also:
-
DEFAULT_PREFIX_LENGTH
public static final int DEFAULT_PREFIX_LENGTH- See Also:
-
DEFAULT_MAX_EXPANSIONS
public static final int DEFAULT_MAX_EXPANSIONS- See Also:
-
DEFAULT_ZERO_TERMS_QUERY
-
DEFAULT_FUZZY_TRANSPOSITIONS
public static final boolean DEFAULT_FUZZY_TRANSPOSITIONS- See Also:
-
-
Constructor Details
-
MultiMatchQueryBuilder
Constructs a new text query. -
MultiMatchQueryBuilder
Read from a stream.- Throws:
IOException
-
-
Method Details
-
getType
Returns the type (for testing) -
doWriteTo
- Specified by:
doWriteTo
in classAbstractQueryBuilder<MultiMatchQueryBuilder>
- Throws:
IOException
-
value
-
field
Adds a field to run the multi match against. -
field
Adds a field to run the multi match against with a specific boost. -
fields
Add several fields to run the query against with a specific boost. -
fields
-
type
Sets the type of the text query. -
type
Sets the type of the text query. -
type
-
operator
Sets the operator to use when using a boolean query. Defaults toOR
. -
operator
-
analyzer
Explicitly set the analyzer to use. Defaults to use explicit mapping config for the field, or, if not set, the default search analyzer. -
analyzer
-
slop
Set the phrase slop if evaluated to a phrase query type. -
slop
public int slop() -
fuzziness
Sets the fuzziness used when evaluated to a fuzzy query type. Defaults to "AUTO". -
fuzziness
-
prefixLength
-
prefixLength
public int prefixLength() -
maxExpansions
When using fuzzy or prefix type query, the number of term expansions to use. Defaults to unbounded so its recommended to set it to a reasonable value for faster execution. -
maxExpansions
public int maxExpansions() -
minimumShouldMatch
-
minimumShouldMatch
-
fuzzyRewrite
-
fuzzyRewrite
-
tieBreaker
Tie-Breaker for "best-match" disjunction queries (OR-Queries). The tie breaker capability allows documents that match more than one query clause (in this case on more than one field) to be scored better than documents that match only the best of the fields, without confusing this with the better case of two distinct matches in the multiple fields.
A tie-breaker value of
1.0
is interpreted as a signal to score queries as "most-match" queries where all matching query clauses are considered for scoring.- See Also:
-
tieBreaker
Tie-Breaker for "best-match" disjunction queries (OR-Queries). The tie breaker capability allows documents that match more than one query clause (in this case on more than one field) to be scored better than documents that match only the best of the fields, without confusing this with the better case of two distinct matches in the multiple fields.
A tie-breaker value of
1.0
is interpreted as a signal to score queries as "most-match" queries where all matching query clauses are considered for scoring.- See Also:
-
tieBreaker
-
lenient
Sets whether format based failures will be ignored. -
lenient
public boolean lenient() -
zeroTermsQuery
-
zeroTermsQuery
-
autoGenerateSynonymsPhraseQuery
-
autoGenerateSynonymsPhraseQuery
public boolean autoGenerateSynonymsPhraseQuery()Whether phrase queries should be automatically generated for multi terms synonyms. Defaults totrue
. -
fuzzyTranspositions
public boolean fuzzyTranspositions() -
fuzzyTranspositions
Sets whether transpositions are supported in fuzzy queries.The default metric used by fuzzy queries to determine a match is the Damerau-Levenshtein distance formula which supports transpositions. Setting transposition to false will switch to classic Levenshtein distance.
If not set, Damerau-Levenshtein distance metric will be used. -
doXContent
- Specified by:
doXContent
in classAbstractQueryBuilder<MultiMatchQueryBuilder>
- Throws:
IOException
-
fromXContent
- Throws:
IOException
-
getWriteableName
Description copied from interface:VersionedNamedWriteable
Returns the name of the writeable object -
doToQuery
protected org.apache.lucene.search.Query doToQuery(SearchExecutionContext context) throws IOException - Specified by:
doToQuery
in classAbstractQueryBuilder<MultiMatchQueryBuilder>
- Throws:
IOException
-
doHashCode
protected int doHashCode()- Specified by:
doHashCode
in classAbstractQueryBuilder<MultiMatchQueryBuilder>
-
doEquals
Description copied from class:AbstractQueryBuilder
Indicates whether some otherQueryBuilder
object of the same type is "equal to" this one.- Specified by:
doEquals
in classAbstractQueryBuilder<MultiMatchQueryBuilder>
-
getMinimalSupportedVersion
Description copied from interface:VersionedNamedWriteable
The minimal version of the recipient this object can be sent to
-