Class MatchQueryBuilder

    • Field Detail


        public static final ParseField ZERO_TERMS_QUERY_FIELD

        public static final ParseField CUTOFF_FREQUENCY_FIELD

        public static final ParseField LENIENT_FIELD

        public static final ParseField FUZZY_TRANSPOSITIONS_FIELD

        public static final ParseField FUZZY_REWRITE_FIELD

        public static final ParseField MINIMUM_SHOULD_MATCH_FIELD

        public static final ParseField OPERATOR_FIELD

        public static final ParseField MAX_EXPANSIONS_FIELD

        public static final ParseField PREFIX_LENGTH_FIELD

        public static final ParseField ANALYZER_FIELD

        public static final ParseField QUERY_FIELD

        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

        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)
        Read from a stream.
    • Method Detail

      • 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 to OR.
      • 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, otherwise null
      • 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
        prefixLength - non-negative length of prefix
        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 be null if 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:
      • 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

        public MatchQueryBuilder setLenient​(boolean lenient)
        use #lenient() instead
        Sets 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.
      • autoGenerateSynonymsPhraseQuery

        public MatchQueryBuilder autoGenerateSynonymsPhraseQuery​(boolean enable)
      • autoGenerateSynonymsPhraseQuery

        public boolean autoGenerateSynonymsPhraseQuery()
        Whether phrase queries should be automatically generated for multi terms synonyms. Defaults to true.
      • getWriteableName

        public java.lang.String getWriteableName()
        Description copied from interface: NamedWriteable
        Returns the name of the writeable object