Package org.elasticsearch.index.query
Class MatchQueryBuilder
java.lang.Object
org.elasticsearch.index.query.AbstractQueryBuilder<MatchQueryBuilder>
org.elasticsearch.index.query.MatchQueryBuilder
- All Implemented Interfaces:
NamedWriteable
,Writeable
,ToXContent
,ToXContentObject
,QueryBuilder
,Rewriteable<QueryBuilder>
public class MatchQueryBuilder extends AbstractQueryBuilder<MatchQueryBuilder>
Match query is a query that analyzes the text and constructs a query as the
result of the analysis.
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.elasticsearch.common.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
Fields Modifier and Type Field Description static ParseField
ANALYZER_FIELD
static ParseField
CUTOFF_FREQUENCY_FIELD
Deprecated.Since max_optimization optimization landed in 7.0, normal MatchQuery will achieve the same result without any configuration.static Operator
DEFAULT_OPERATOR
The default mode terms are combined in a match querystatic ParseField
FUZZY_REWRITE_FIELD
static ParseField
FUZZY_TRANSPOSITIONS_FIELD
static ParseField
GENERATE_SYNONYMS_PHRASE_QUERY
static ParseField
LENIENT_FIELD
static ParseField
MAX_EXPANSIONS_FIELD
static ParseField
MINIMUM_SHOULD_MATCH_FIELD
static java.lang.String
NAME
The name for the match querystatic ParseField
OPERATOR_FIELD
static ParseField
PREFIX_LENGTH_FIELD
static ParseField
QUERY_FIELD
static ParseField
ZERO_TERMS_QUERY_FIELD
Fields inherited from class org.elasticsearch.index.query.AbstractQueryBuilder
boost, BOOST_FIELD, DEFAULT_BOOST, NAME_FIELD, queryName
-
Constructor Summary
Constructors Constructor Description MatchQueryBuilder(java.lang.String fieldName, java.lang.Object value)
Constructs a new match query.MatchQueryBuilder(StreamInput in)
Read from a stream. -
Method Summary
Modifier and Type Method Description java.lang.String
analyzer()
Get the analyzer to use, if previously set, otherwisenull
MatchQueryBuilder
analyzer(java.lang.String analyzer)
Explicitly set the analyzer to use.boolean
autoGenerateSynonymsPhraseQuery()
Whether phrase queries should be automatically generated for multi terms synonyms.MatchQueryBuilder
autoGenerateSynonymsPhraseQuery(boolean enable)
java.lang.Float
cutoffFrequency()
Gets the optional cutoff value, can benull
if not set previouslyMatchQueryBuilder
cutoffFrequency(float cutoff)
Deprecated.seeCUTOFF_FREQUENCY_FIELD
for more detailsprotected boolean
doEquals(MatchQueryBuilder other)
Indicates whether some otherQueryBuilder
object of the same type is "equal to" this one.protected int
doHashCode()
protected org.apache.lucene.search.Query
doToQuery(QueryShardContext context)
protected void
doWriteTo(StreamOutput out)
void
doXContent(XContentBuilder builder, ToXContent.Params params)
java.lang.String
fieldName()
Returns the field name used in this query.static MatchQueryBuilder
fromXContent(XContentParser parser)
Fuzziness
fuzziness()
Gets the fuzziness used when evaluated to a fuzzy query type.MatchQueryBuilder
fuzziness(java.lang.Object fuzziness)
Sets the fuzziness used when evaluated to a fuzzy query type.java.lang.String
fuzzyRewrite()
Get the fuzzy_rewrite parameterMatchQueryBuilder
fuzzyRewrite(java.lang.String fuzzyRewrite)
Sets the fuzzy_rewrite parameter controlling how the fuzzy query will get rewrittenboolean
fuzzyTranspositions()
Gets the fuzzy query transposition setting.MatchQueryBuilder
fuzzyTranspositions(boolean fuzzyTranspositions)
Sets whether transpositions are supported in fuzzy queries.java.lang.String
getWriteableName()
Returns the name of the writeable objectboolean
lenient()
Gets leniency setting that controls if format based failures will be ignored.MatchQueryBuilder
lenient(boolean lenient)
Sets whether format based failures will be ignored.int
maxExpansions()
Get the (optional) number of term expansions when using fuzzy or prefix type query.MatchQueryBuilder
maxExpansions(int maxExpansions)
When using fuzzy or prefix type query, the number of term expansions to use.java.lang.String
minimumShouldMatch()
Gets the minimumShouldMatch valueMatchQueryBuilder
minimumShouldMatch(java.lang.String minimumShouldMatch)
Sets optional minimumShouldMatch value to apply to the queryOperator
operator()
Returns the operator to use in a boolean query.MatchQueryBuilder
operator(Operator operator)
Sets the operator to use when using a boolean query.int
prefixLength()
Gets the length of a length of common (non-fuzzy) prefix for fuzzy match queriesMatchQueryBuilder
prefixLength(int prefixLength)
Sets the length of a length of common (non-fuzzy) prefix for fuzzy match queriesjava.lang.Object
value()
Returns the value used in this query.MatchQuery.ZeroTermsQuery
zeroTermsQuery()
Returns the setting for handling zero terms queries.MatchQueryBuilder
zeroTermsQuery(MatchQuery.ZeroTermsQuery zeroTermsQuery)
Sets query to use in case no query terms are available, e.g.Methods inherited from class org.elasticsearch.index.query.AbstractQueryBuilder
addValidationError, boost, boost, checkNegativeBoost, declareStandardFields, doRewrite, equals, extractInnerHitBuilders, getName, hashCode, parseInnerQueryBuilder, printBoostAndQueryName, queryName, queryName, requireValue, rewrite, throwParsingExceptionOnMultipleFields, toQuery, toString, toXContent, writeTo
-
Field Details
-
ZERO_TERMS_QUERY_FIELD
-
CUTOFF_FREQUENCY_FIELD
Deprecated.Since max_optimization optimization landed in 7.0, normal MatchQuery will achieve the same result without any configuration. -
LENIENT_FIELD
-
FUZZY_TRANSPOSITIONS_FIELD
-
FUZZY_REWRITE_FIELD
-
MINIMUM_SHOULD_MATCH_FIELD
-
OPERATOR_FIELD
-
MAX_EXPANSIONS_FIELD
-
PREFIX_LENGTH_FIELD
-
ANALYZER_FIELD
-
QUERY_FIELD
-
GENERATE_SYNONYMS_PHRASE_QUERY
-
NAME
public static final java.lang.String NAMEThe name for the match query- See Also:
- Constant Field Values
-
DEFAULT_OPERATOR
The default mode terms are combined in a match query
-
-
Constructor Details
-
MatchQueryBuilder
public MatchQueryBuilder(java.lang.String fieldName, java.lang.Object value)Constructs a new match query. -
MatchQueryBuilder
Read from a stream.- Throws:
java.io.IOException
-
-
Method Details
-
doWriteTo
- Specified by:
doWriteTo
in classAbstractQueryBuilder<MatchQueryBuilder>
- Throws:
java.io.IOException
-
fieldName
public java.lang.String fieldName()Returns the field name used in this query. -
value
public java.lang.Object value()Returns the value used in this query. -
operator
Sets the operator to use when using a boolean query. Defaults toOR
. -
operator
Returns the operator to use in a boolean query. -
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
public java.lang.String analyzer()Get the analyzer to use, if previously set, otherwisenull
-
fuzziness
Sets the fuzziness used when evaluated to a fuzzy query type. Defaults to "AUTO". -
fuzziness
Gets the fuzziness used when evaluated to a fuzzy query type. -
prefixLength
Sets the length of a length of common (non-fuzzy) prefix for fuzzy match queries- Parameters:
prefixLength
- non-negative length of prefix- Throws:
java.lang.IllegalArgumentException
- in case the prefix is negative
-
prefixLength
public int prefixLength()Gets the length of a length of common (non-fuzzy) prefix for fuzzy match queries -
maxExpansions
When using fuzzy or prefix type query, the number of term expansions to use. -
maxExpansions
public int maxExpansions()Get the (optional) number of term expansions when using fuzzy or prefix type query. -
cutoffFrequency
Deprecated.seeCUTOFF_FREQUENCY_FIELD
for more detailsSet a cutoff value in [0..1] (or absolute number >=1) representing the maximum threshold of a terms document frequency to be considered a low frequency term. -
cutoffFrequency
public java.lang.Float cutoffFrequency()Gets the optional cutoff value, can benull
if not set previously -
minimumShouldMatch
Sets optional minimumShouldMatch value to apply to the query -
minimumShouldMatch
public java.lang.String minimumShouldMatch()Gets the minimumShouldMatch value -
fuzzyRewrite
Sets the fuzzy_rewrite parameter controlling how the fuzzy query will get rewritten -
fuzzyRewrite
public java.lang.String fuzzyRewrite()Get the fuzzy_rewrite parameter- See Also:
fuzzyRewrite(String)
-
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. -
fuzzyTranspositions
public boolean fuzzyTranspositions()Gets the fuzzy query transposition setting. -
lenient
Sets whether format based failures will be ignored. -
lenient
public boolean lenient()Gets leniency setting that controls if format based failures will be ignored. -
zeroTermsQuery
Sets query to use in case no query terms are available, e.g. after analysis removed them. Defaults toMatchQuery.ZeroTermsQuery.NONE
, but can be set toMatchQuery.ZeroTermsQuery.ALL
instead. -
zeroTermsQuery
Returns the setting for handling zero terms queries. -
autoGenerateSynonymsPhraseQuery
-
autoGenerateSynonymsPhraseQuery
public boolean autoGenerateSynonymsPhraseQuery()Whether phrase queries should be automatically generated for multi terms synonyms. Defaults totrue
. -
doXContent
public void doXContent(XContentBuilder builder, ToXContent.Params params) throws java.io.IOException- Specified by:
doXContent
in classAbstractQueryBuilder<MatchQueryBuilder>
- Throws:
java.io.IOException
-
doToQuery
protected org.apache.lucene.search.Query doToQuery(QueryShardContext context) throws java.io.IOException- Specified by:
doToQuery
in classAbstractQueryBuilder<MatchQueryBuilder>
- Throws:
java.io.IOException
-
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<MatchQueryBuilder>
-
doHashCode
protected int doHashCode()- Specified by:
doHashCode
in classAbstractQueryBuilder<MatchQueryBuilder>
-
getWriteableName
public java.lang.String getWriteableName()Description copied from interface:NamedWriteable
Returns the name of the writeable object -
fromXContent
- Throws:
java.io.IOException
-