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 ParseFieldANALYZER_FIELDstatic ParseFieldCUTOFF_FREQUENCY_FIELDstatic OperatorDEFAULT_OPERATORThe default mode terms are combined in a match querystatic ParseFieldFUZZY_REWRITE_FIELDstatic ParseFieldFUZZY_TRANSPOSITIONS_FIELDstatic ParseFieldGENERATE_SYNONYMS_PHRASE_QUERYstatic ParseFieldLENIENT_FIELDstatic ParseFieldMAX_EXPANSIONS_FIELDstatic ParseFieldMINIMUM_SHOULD_MATCH_FIELDstatic java.lang.StringNAMEThe name for the match querystatic ParseFieldOPERATOR_FIELDstatic ParseFieldPREFIX_LENGTH_FIELDstatic ParseFieldQUERY_FIELDstatic ParseFieldZERO_TERMS_QUERY_FIELD-
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.common.xcontent.ToXContent
EMPTY_PARAMS
-
-
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.Stringanalyzer()Get the analyzer to use, if previously set, otherwisenullMatchQueryBuilderanalyzer(java.lang.String analyzer)Explicitly set the analyzer to use.booleanautoGenerateSynonymsPhraseQuery()Whether phrase queries should be automatically generated for multi terms synonyms.MatchQueryBuilderautoGenerateSynonymsPhraseQuery(boolean enable)java.lang.FloatcutoffFrequency()Gets the optional cutoff value, can benullif not set previouslyMatchQueryBuildercutoffFrequency(float cutoff)Set 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.protected booleandoEquals(MatchQueryBuilder other)Indicates whether some otherQueryBuilderobject of the same type is "equal to" this one.protected intdoHashCode()protected org.apache.lucene.search.QuerydoToQuery(QueryShardContext context)protected voiddoWriteTo(StreamOutput out)voiddoXContent(XContentBuilder builder, ToXContent.Params params)java.lang.StringfieldName()Returns the field name used in this query.static MatchQueryBuilderfromXContent(XContentParser parser)Fuzzinessfuzziness()Gets the fuzziness used when evaluated to a fuzzy query type.MatchQueryBuilderfuzziness(java.lang.Object fuzziness)Sets the fuzziness used when evaluated to a fuzzy query type.java.lang.StringfuzzyRewrite()Get the fuzzy_rewrite parameterMatchQueryBuilderfuzzyRewrite(java.lang.String fuzzyRewrite)Sets the fuzzy_rewrite parameter controlling how the fuzzy query will get rewrittenbooleanfuzzyTranspositions()Gets the fuzzy query transposition setting.MatchQueryBuilderfuzzyTranspositions(boolean fuzzyTranspositions)Sets whether transpositions are supported in fuzzy queries.java.lang.StringgetWriteableName()Returns the name of the writeable objectbooleanlenient()Gets leniency setting that controls if format based failures will be ignored.MatchQueryBuilderlenient(boolean lenient)Sets whether format based failures will be ignored.intmaxExpansions()Get the (optional) number of term expansions when using fuzzy or prefix type query.MatchQueryBuildermaxExpansions(int maxExpansions)When using fuzzy or prefix type query, the number of term expansions to use.java.lang.StringminimumShouldMatch()Gets the minimumShouldMatch valueMatchQueryBuilderminimumShouldMatch(java.lang.String minimumShouldMatch)Sets optional minimumShouldMatch value to apply to the queryOperatoroperator()Returns the operator to use in a boolean query.MatchQueryBuilderoperator(Operator operator)Sets the operator to use when using a boolean query.intprefixLength()Gets the length of a length of common (non-fuzzy) prefix for fuzzy match queriesMatchQueryBuilderprefixLength(int prefixLength)Sets the length of a length of common (non-fuzzy) prefix for fuzzy match queriesMatchQueryBuildersetLenient(boolean lenient)Deprecated.use #lenient() insteadjava.lang.Objectvalue()Returns the value used in this query.MatchQuery.ZeroTermsQueryzeroTermsQuery()Returns the setting for handling zero terms queries.MatchQueryBuilderzeroTermsQuery(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, toFilter, toQuery, toString, toString, toXContent, writeTo
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.elasticsearch.common.xcontent.ToXContentObject
isFragment
-
-
-
-
Field Detail
-
ZERO_TERMS_QUERY_FIELD
public static final ParseField ZERO_TERMS_QUERY_FIELD
-
CUTOFF_FREQUENCY_FIELD
public static final ParseField CUTOFF_FREQUENCY_FIELD
-
LENIENT_FIELD
public static final ParseField LENIENT_FIELD
-
FUZZY_TRANSPOSITIONS_FIELD
public static final ParseField FUZZY_TRANSPOSITIONS_FIELD
-
FUZZY_REWRITE_FIELD
public static final ParseField FUZZY_REWRITE_FIELD
-
MINIMUM_SHOULD_MATCH_FIELD
public static final ParseField MINIMUM_SHOULD_MATCH_FIELD
-
OPERATOR_FIELD
public static final ParseField OPERATOR_FIELD
-
MAX_EXPANSIONS_FIELD
public static final ParseField MAX_EXPANSIONS_FIELD
-
PREFIX_LENGTH_FIELD
public static final ParseField PREFIX_LENGTH_FIELD
-
ANALYZER_FIELD
public static final ParseField ANALYZER_FIELD
-
QUERY_FIELD
public static final ParseField QUERY_FIELD
-
GENERATE_SYNONYMS_PHRASE_QUERY
public static final ParseField GENERATE_SYNONYMS_PHRASE_QUERY
-
NAME
public static final java.lang.String NAME
The name for the match query- See Also:
- Constant Field Values
-
DEFAULT_OPERATOR
public static final Operator DEFAULT_OPERATOR
The default mode terms are combined in a match query
-
-
Constructor Detail
-
MatchQueryBuilder
public MatchQueryBuilder(java.lang.String fieldName, java.lang.Object value)Constructs a new match query.
-
MatchQueryBuilder
public MatchQueryBuilder(StreamInput in) throws java.io.IOException
Read from a stream.- Throws:
java.io.IOException
-
-
Method Detail
-
doWriteTo
protected void doWriteTo(StreamOutput out) throws java.io.IOException
- Specified by:
doWriteToin 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
public MatchQueryBuilder operator(Operator operator)
Sets the operator to use when using a boolean query. Defaults toOR.
-
operator
public Operator operator()
Returns the operator to use in a boolean query.
-
analyzer
public MatchQueryBuilder analyzer(java.lang.String 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
public MatchQueryBuilder fuzziness(java.lang.Object fuzziness)
Sets the fuzziness used when evaluated to a fuzzy query type. Defaults to "AUTO".
-
fuzziness
public Fuzziness fuzziness()
Gets the fuzziness used when evaluated to a fuzzy query type.
-
prefixLength
public MatchQueryBuilder prefixLength(int 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
public MatchQueryBuilder maxExpansions(int 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
public MatchQueryBuilder cutoffFrequency(float cutoff)
Set 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 benullif not set previously
-
minimumShouldMatch
public MatchQueryBuilder minimumShouldMatch(java.lang.String minimumShouldMatch)
Sets optional minimumShouldMatch value to apply to the query
-
minimumShouldMatch
public java.lang.String minimumShouldMatch()
Gets the minimumShouldMatch value
-
fuzzyRewrite
public MatchQueryBuilder fuzzyRewrite(java.lang.String 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
public MatchQueryBuilder fuzzyTranspositions(boolean 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.
-
setLenient
@Deprecated public MatchQueryBuilder setLenient(boolean lenient)
Deprecated.use #lenient() insteadSets whether format based failures will be ignored.
-
lenient
public MatchQueryBuilder lenient(boolean 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
public MatchQueryBuilder zeroTermsQuery(MatchQuery.ZeroTermsQuery 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.ALLinstead.
-
zeroTermsQuery
public MatchQuery.ZeroTermsQuery zeroTermsQuery()
Returns the setting for handling zero terms queries.
-
autoGenerateSynonymsPhraseQuery
public MatchQueryBuilder autoGenerateSynonymsPhraseQuery(boolean enable)
-
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:
doXContentin classAbstractQueryBuilder<MatchQueryBuilder>- Throws:
java.io.IOException
-
doToQuery
protected org.apache.lucene.search.Query doToQuery(QueryShardContext context) throws java.io.IOException
- Specified by:
doToQueryin classAbstractQueryBuilder<MatchQueryBuilder>- Throws:
java.io.IOException
-
doEquals
protected boolean doEquals(MatchQueryBuilder other)
Description copied from class:AbstractQueryBuilderIndicates whether some otherQueryBuilderobject of the same type is "equal to" this one.- Specified by:
doEqualsin classAbstractQueryBuilder<MatchQueryBuilder>
-
doHashCode
protected int doHashCode()
- Specified by:
doHashCodein classAbstractQueryBuilder<MatchQueryBuilder>
-
getWriteableName
public java.lang.String getWriteableName()
Description copied from interface:NamedWriteableReturns the name of the writeable object
-
fromXContent
public static MatchQueryBuilder fromXContent(XContentParser parser) throws java.io.IOException
- Throws:
java.io.IOException
-
-