Class SortedDocValuesField

  • All Implemented Interfaces:
    IndexableField

    public class SortedDocValuesField
    extends Field
    Field that stores a per-document BytesRef value, indexed for sorting. Here's an example usage:
       document.add(new SortedDocValuesField(name, new BytesRef("hello")));
     

    If you also need to store the value, you should add a separate StoredField instance.

    This value can be at most 32766 bytes long.

    • Field Detail

      • TYPE

        public static final FieldType TYPE
        Type for sorted bytes DocValues
    • Constructor Detail

      • SortedDocValuesField

        public SortedDocValuesField​(String name,
                                    BytesRef bytes)
        Create a new sorted DocValues field.
        Parameters:
        name - field name
        bytes - binary content
        Throws:
        IllegalArgumentException - if the field name is null
    • Method Detail

      • newSlowRangeQuery

        public static Query newSlowRangeQuery​(String field,
                                              BytesRef lowerValue,
                                              BytesRef upperValue,
                                              boolean lowerInclusive,
                                              boolean upperInclusive)
        Create a range query that matches all documents whose value is between lowerValue and upperValue included.

        You can have half-open ranges by setting lowerValue = null or upperValue = null.

        NOTE: Such queries cannot efficiently advance to the next match, which makes them slow if they are not ANDed with a selective query. As a consequence, they are best used wrapped in an IndexOrDocValuesQuery, alongside a range query that executes on points, such as BinaryPoint.newRangeQuery(java.lang.String, byte[], byte[]).