Class Filters

java.lang.Object
com.mongodb.client.model.Filters

public final class Filters extends Object
A factory for query filters. A convenient way to use this class is to statically import all of its methods, which allows usage like:
    collection.find(and(eq("x", 1), lt("y", 3)));
 
Since:
3.0
  • Method Summary

    Modifier and Type
    Method
    Description
    static <TItem> Bson
    all(String fieldName, Iterable<TItem> values)
    Creates a filter that matches all documents where the value of a field is an array that contains all the specified values.
    static <TItem> Bson
    all(String fieldName, TItem... values)
    Creates a filter that matches all documents where the value of a field is an array that contains all the specified values.
    static Bson
    and(Iterable<Bson> filters)
    Creates a filter that performs a logical AND of the provided list of filters.
    static Bson
    and(Bson... filters)
    Creates a filter that performs a logical AND of the provided list of filters.
    static Bson
    bitsAllClear(String fieldName, long bitmask)
    Creates a filter that matches all documents where all of the bit positions are clear in the field.
    static Bson
    bitsAllSet(String fieldName, long bitmask)
    Creates a filter that matches all documents where all of the bit positions are set in the field.
    static Bson
    bitsAnyClear(String fieldName, long bitmask)
    Creates a filter that matches all documents where any of the bit positions are clear in the field.
    static Bson
    bitsAnySet(String fieldName, long bitmask)
    Creates a filter that matches all documents where any of the bit positions are set in the field.
    static Bson
    elemMatch(String fieldName, Bson filter)
    Creates a filter that matches all documents containing a field that is an array where at least one member of the array matches the given filter.
    static Bson
    Creates an empty filter that will match all documents.
    static <TItem> Bson
    eq(String fieldName, TItem value)
    Creates a filter that matches all documents where the value of the field name equals the specified value.
    static <TItem> Bson
    eq(TItem value)
    Creates a filter that matches all documents where the value of _id field equals the specified value.
    static Bson
    exists(String fieldName)
    Creates a filter that matches all documents that contain the given field.
    static Bson
    exists(String fieldName, boolean exists)
    Creates a filter that matches all documents that either contain or do not contain the given field, depending on the value of the exists parameter.
    static <TExpression>
    Bson
    expr(TExpression expression)
    Allows the use of aggregation expressions within the query language.
    static Bson
    geoIntersects(String fieldName, Geometry geometry)
    Creates a filter that matches all documents containing a field with geospatial data that intersects with the specified shape.
    static Bson
    geoIntersects(String fieldName, Bson geometry)
    Creates a filter that matches all documents containing a field with geospatial data that intersects with the specified shape.
    static Bson
    geoWithin(String fieldName, Geometry geometry)
    Creates a filter that matches all documents containing a field with geospatial data that exists entirely within the specified shape.
    static Bson
    geoWithin(String fieldName, Bson geometry)
    Creates a filter that matches all documents containing a field with geospatial data that exists entirely within the specified shape.
    static Bson
    geoWithinBox(String fieldName, double lowerLeftX, double lowerLeftY, double upperRightX, double upperRightY)
    Creates a filter that matches all documents containing a field with grid coordinates data that exist entirely within the specified box.
    static Bson
    geoWithinCenter(String fieldName, double x, double y, double radius)
    Creates a filter that matches all documents containing a field with grid coordinates data that exist entirely within the specified circle.
    static Bson
    geoWithinCenterSphere(String fieldName, double x, double y, double radius)
    Creates a filter that matches all documents containing a field with geospatial data (GeoJSON or legacy coordinate pairs) that exist entirely within the specified circle, using spherical geometry.
    static Bson
    geoWithinPolygon(String fieldName, List<List<Double>> points)
    Creates a filter that matches all documents containing a field with grid coordinates data that exist entirely within the specified polygon.
    static <TItem> Bson
    gt(String fieldName, TItem value)
    Creates a filter that matches all documents where the value of the given field is greater than the specified value.
    static <TItem> Bson
    gte(String fieldName, TItem value)
    Creates a filter that matches all documents where the value of the given field is greater than or equal to the specified value.
    static <TItem> Bson
    in(String fieldName, Iterable<TItem> values)
    Creates a filter that matches all documents where the value of a field equals any value in the list of specified values.
    static <TItem> Bson
    in(String fieldName, TItem... values)
    Creates a filter that matches all documents where the value of a field equals any value in the list of specified values.
    static Bson
    jsonSchema(Bson schema)
    Creates a filter that matches all documents that validate against the given JSON schema document.
    static <TItem> Bson
    lt(String fieldName, TItem value)
    Creates a filter that matches all documents where the value of the given field is less than the specified value.
    static <TItem> Bson
    lte(String fieldName, TItem value)
    Creates a filter that matches all documents where the value of the given field is less than or equal to the specified value.
    static Bson
    mod(String fieldName, long divisor, long remainder)
    Creates a filter that matches all documents where the value of a field divided by a divisor has the specified remainder (i.e.
    static <TItem> Bson
    ne(String fieldName, TItem value)
    Creates a filter that matches all documents where the value of the field name does not equal the specified value.
    static Bson
    near(String fieldName, double x, double y, Double maxDistance, Double minDistance)
    Creates a filter that matches all documents containing a field with geospatial data that is near the specified point.
    static Bson
    near(String fieldName, Point geometry, Double maxDistance, Double minDistance)
    Creates a filter that matches all documents containing a field with geospatial data that is near the specified GeoJSON point.
    static Bson
    near(String fieldName, Bson geometry, Double maxDistance, Double minDistance)
    Creates a filter that matches all documents containing a field with geospatial data that is near the specified GeoJSON point.
    static Bson
    nearSphere(String fieldName, double x, double y, Double maxDistance, Double minDistance)
    Creates a filter that matches all documents containing a field with geospatial data that is near the specified point using spherical geometry.
    static Bson
    nearSphere(String fieldName, Point geometry, Double maxDistance, Double minDistance)
    Creates a filter that matches all documents containing a field with geospatial data that is near the specified GeoJSON point using spherical geometry.
    static Bson
    nearSphere(String fieldName, Bson geometry, Double maxDistance, Double minDistance)
    Creates a filter that matches all documents containing a field with geospatial data that is near the specified GeoJSON point using spherical geometry.
    static <TItem> Bson
    nin(String fieldName, Iterable<TItem> values)
    Creates a filter that matches all documents where the value of a field does not equal any of the specified values or does not exist.
    static <TItem> Bson
    nin(String fieldName, TItem... values)
    Creates a filter that matches all documents where the value of a field does not equal any of the specified values or does not exist.
    static Bson
    nor(Iterable<Bson> filters)
    Creates a filter that performs a logical NOR operation on all the specified filters.
    static Bson
    nor(Bson... filters)
    Creates a filter that performs a logical NOR operation on all the specified filters.
    static Bson
    not(Bson filter)
    Creates a filter that matches all documents that do not match the passed in filter.
    static Bson
    or(Iterable<Bson> filters)
    Creates a filter that preforms a logical OR of the provided list of filters.
    static Bson
    or(Bson... filters)
    Creates a filter that preforms a logical OR of the provided list of filters.
    static Bson
    regex(String fieldName, String pattern)
    Creates a filter that matches all documents where the value of the field matches the given regular expression pattern.
    static Bson
    regex(String fieldName, String pattern, String options)
    Creates a filter that matches all documents where the value of the field matches the given regular expression pattern with the given options applied.
    static Bson
    regex(String fieldName, Pattern pattern)
    Creates a filter that matches all documents where the value of the field matches the given regular expression pattern.
    static Bson
    size(String fieldName, int size)
    Creates a filter that matches all documents where the value of a field is an array of the specified size.
    static Bson
    text(String search)
    Creates a filter that matches all documents matching the given search term.
    static Bson
    text(String search, TextSearchOptions textSearchOptions)
    Creates a filter that matches all documents matching the given the search term with the given text search options.
    static Bson
    type(String fieldName, String type)
    Creates a filter that matches all documents where the value of the field is of the specified BSON type.
    static Bson
    type(String fieldName, BsonType type)
    Creates a filter that matches all documents where the value of the field is of the specified BSON type.
    static Bson
    where(String javaScriptExpression)
    Creates a filter that matches all documents for which the given expression is true.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Method Details

    • eq

      public static <TItem> Bson eq(@Nullable TItem value)
      Creates a filter that matches all documents where the value of _id field equals the specified value. Note that this doesn't actually generate a $eq operator, as the query language doesn't require it.
      Type Parameters:
      TItem - the value type
      Parameters:
      value - the value, which may be null
      Returns:
      the filter
      Since:
      3.4
      MongoDB documentation
      $eq
    • eq

      public static <TItem> Bson eq(String fieldName, @Nullable TItem value)
      Creates a filter that matches all documents where the value of the field name equals the specified value. Note that this doesn't actually generate a $eq operator, as the query language doesn't require it.
      Type Parameters:
      TItem - the value type
      Parameters:
      fieldName - the field name
      value - the value, which may be null
      Returns:
      the filter
      MongoDB documentation
      $eq
    • ne

      public static <TItem> Bson ne(String fieldName, @Nullable TItem value)
      Creates a filter that matches all documents where the value of the field name does not equal the specified value.
      Type Parameters:
      TItem - the value type
      Parameters:
      fieldName - the field name
      value - the value, which may be null
      Returns:
      the filter
      MongoDB documentation
      $ne
    • gt

      public static <TItem> Bson gt(String fieldName, TItem value)
      Creates a filter that matches all documents where the value of the given field is greater than the specified value.
      Type Parameters:
      TItem - the value type
      Parameters:
      fieldName - the field name
      value - the value
      Returns:
      the filter
      MongoDB documentation
      $gt
    • lt

      public static <TItem> Bson lt(String fieldName, TItem value)
      Creates a filter that matches all documents where the value of the given field is less than the specified value.
      Type Parameters:
      TItem - the value type
      Parameters:
      fieldName - the field name
      value - the value
      Returns:
      the filter
      MongoDB documentation
      $lt
    • gte

      public static <TItem> Bson gte(String fieldName, TItem value)
      Creates a filter that matches all documents where the value of the given field is greater than or equal to the specified value.
      Type Parameters:
      TItem - the value type
      Parameters:
      fieldName - the field name
      value - the value
      Returns:
      the filter
      MongoDB documentation
      $gte
    • lte

      public static <TItem> Bson lte(String fieldName, TItem value)
      Creates a filter that matches all documents where the value of the given field is less than or equal to the specified value.
      Type Parameters:
      TItem - the value type
      Parameters:
      fieldName - the field name
      value - the value
      Returns:
      the filter
      MongoDB documentation
      $lte
    • in

      @SafeVarargs public static <TItem> Bson in(String fieldName, TItem... values)
      Creates a filter that matches all documents where the value of a field equals any value in the list of specified values.
      Type Parameters:
      TItem - the value type
      Parameters:
      fieldName - the field name
      values - the list of values
      Returns:
      the filter
      MongoDB documentation
      $in
    • in

      public static <TItem> Bson in(String fieldName, Iterable<TItem> values)
      Creates a filter that matches all documents where the value of a field equals any value in the list of specified values.
      Type Parameters:
      TItem - the value type
      Parameters:
      fieldName - the field name
      values - the list of values
      Returns:
      the filter
      MongoDB documentation
      $in
    • nin

      @SafeVarargs public static <TItem> Bson nin(String fieldName, TItem... values)
      Creates a filter that matches all documents where the value of a field does not equal any of the specified values or does not exist.
      Type Parameters:
      TItem - the value type
      Parameters:
      fieldName - the field name
      values - the list of values
      Returns:
      the filter
      MongoDB documentation
      $nin
    • nin

      public static <TItem> Bson nin(String fieldName, Iterable<TItem> values)
      Creates a filter that matches all documents where the value of a field does not equal any of the specified values or does not exist.
      Type Parameters:
      TItem - the value type
      Parameters:
      fieldName - the field name
      values - the list of values
      Returns:
      the filter
      MongoDB documentation
      $nin
    • and

      public static Bson and(Iterable<Bson> filters)
      Creates a filter that performs a logical AND of the provided list of filters.
          and(eq("x", 1), lt("y", 3))
       
      will generate a MongoDB query like:
          { $and: [{x : 1}, {y : {$lt : 3}}]}
       
      Parameters:
      filters - the list of filters to and together
      Returns:
      the filter
      MongoDB documentation
      $and
    • and

      public static Bson and(Bson... filters)
      Creates a filter that performs a logical AND of the provided list of filters.
          and(eq("x", 1), lt("y", 3))
       
      will generate a MongoDB query like:
          { $and: [{x : 1}, {y : {$lt : 3}}]}
       
      Parameters:
      filters - the list of filters to and together
      Returns:
      the filter
      MongoDB documentation
      $and
    • or

      public static Bson or(Iterable<Bson> filters)
      Creates a filter that preforms a logical OR of the provided list of filters.
      Parameters:
      filters - the list of filters to and together
      Returns:
      the filter
      MongoDB documentation
      $or
    • or

      public static Bson or(Bson... filters)
      Creates a filter that preforms a logical OR of the provided list of filters.
      Parameters:
      filters - the list of filters to and together
      Returns:
      the filter
      MongoDB documentation
      $or
    • not

      public static Bson not(Bson filter)
      Creates a filter that matches all documents that do not match the passed in filter. Requires the field name to passed as part of the value passed in and lifts it to create a valid "$not" query:
          not(eq("x", 1))
       
      will generate a MongoDB query like:
          {x : $not: {$eq : 1}}
       
      Parameters:
      filter - the value
      Returns:
      the filter
      MongoDB documentation
      $not
    • nor

      public static Bson nor(Bson... filters)
      Creates a filter that performs a logical NOR operation on all the specified filters.
      Parameters:
      filters - the list of values
      Returns:
      the filter
      MongoDB documentation
      $nor
    • nor

      public static Bson nor(Iterable<Bson> filters)
      Creates a filter that performs a logical NOR operation on all the specified filters.
      Parameters:
      filters - the list of values
      Returns:
      the filter
      MongoDB documentation
      $nor
    • exists

      public static Bson exists(String fieldName)
      Creates a filter that matches all documents that contain the given field.
      Parameters:
      fieldName - the field name
      Returns:
      the filter
      MongoDB documentation
      $exists
    • exists

      public static Bson exists(String fieldName, boolean exists)
      Creates a filter that matches all documents that either contain or do not contain the given field, depending on the value of the exists parameter.
      Parameters:
      fieldName - the field name
      exists - true to check for existence, false to check for absence
      Returns:
      the filter
      MongoDB documentation
      $exists
    • type

      public static Bson type(String fieldName, BsonType type)
      Creates a filter that matches all documents where the value of the field is of the specified BSON type.
      Parameters:
      fieldName - the field name
      type - the BSON type
      Returns:
      the filter
      MongoDB documentation
      $type
    • type

      public static Bson type(String fieldName, String type)
      Creates a filter that matches all documents where the value of the field is of the specified BSON type.
      Parameters:
      fieldName - the field name
      type - the string representation of the BSON type
      Returns:
      the filter
      MongoDB documentation
      $type
    • mod

      public static Bson mod(String fieldName, long divisor, long remainder)
      Creates a filter that matches all documents where the value of a field divided by a divisor has the specified remainder (i.e. perform a modulo operation to select documents).
      Parameters:
      fieldName - the field name
      divisor - the modulus
      remainder - the remainder
      Returns:
      the filter
      MongoDB documentation
      $mod
    • regex

      public static Bson regex(String fieldName, String pattern)
      Creates a filter that matches all documents where the value of the field matches the given regular expression pattern.
      Parameters:
      fieldName - the field name
      pattern - the pattern
      Returns:
      the filter
      MongoDB documentation
      $regex
    • regex

      public static Bson regex(String fieldName, String pattern, @Nullable String options)
      Creates a filter that matches all documents where the value of the field matches the given regular expression pattern with the given options applied.
      Parameters:
      fieldName - the field name
      pattern - the pattern
      options - the options
      Returns:
      the filter
      MongoDB documentation
      $regex
    • regex

      public static Bson regex(String fieldName, Pattern pattern)
      Creates a filter that matches all documents where the value of the field matches the given regular expression pattern.
      Parameters:
      fieldName - the field name
      pattern - the pattern
      Returns:
      the filter
      MongoDB documentation
      $regex
    • text

      public static Bson text(String search)
      Creates a filter that matches all documents matching the given search term. You may use Projections.metaTextScore(String) to extract the relevance score assigned to each matched document.

      Aggregates.search(SearchOperator, SearchOptions) / Aggregates.search(SearchCollector, SearchOptions) is a more powerful full-text search alternative.

      Parameters:
      search - the search term
      Returns:
      the filter
      MongoDB documentation
      $text
    • text

      public static Bson text(String search, TextSearchOptions textSearchOptions)
      Creates a filter that matches all documents matching the given the search term with the given text search options. You may use Projections.metaTextScore(String) to extract the relevance score assigned to each matched document.

      Aggregates.search(SearchOperator, SearchOptions) / Aggregates.search(SearchCollector, SearchOptions) is a more powerful full-text search alternative.

      Parameters:
      search - the search term
      textSearchOptions - the text search options to use
      Returns:
      the filter
      Since:
      3.2
      MongoDB documentation
      $text
    • where

      public static Bson where(String javaScriptExpression)
      Creates a filter that matches all documents for which the given expression is true.
      Parameters:
      javaScriptExpression - the JavaScript expression
      Returns:
      the filter
      MongoDB documentation
      $where
    • expr

      public static <TExpression> Bson expr(TExpression expression)
      Allows the use of aggregation expressions within the query language.
      Type Parameters:
      TExpression - the expression type
      Parameters:
      expression - the aggregation expression
      Returns:
      the filter
      Since:
      3.6
      MongoDB documentation
      $expr
      Since server release
      3.6
    • all

      @SafeVarargs public static <TItem> Bson all(String fieldName, TItem... values)
      Creates a filter that matches all documents where the value of a field is an array that contains all the specified values.
      Type Parameters:
      TItem - the value type
      Parameters:
      fieldName - the field name
      values - the list of values
      Returns:
      the filter
      MongoDB documentation
      $all
    • all

      public static <TItem> Bson all(String fieldName, Iterable<TItem> values)
      Creates a filter that matches all documents where the value of a field is an array that contains all the specified values.
      Type Parameters:
      TItem - the value type
      Parameters:
      fieldName - the field name
      values - the list of values
      Returns:
      the filter
      MongoDB documentation
      $all
    • elemMatch

      public static Bson elemMatch(String fieldName, Bson filter)
      Creates a filter that matches all documents containing a field that is an array where at least one member of the array matches the given filter.
      Parameters:
      fieldName - the field name
      filter - the filter to apply to each element
      Returns:
      the filter
      MongoDB documentation
      $elemMatch
    • size

      public static Bson size(String fieldName, int size)
      Creates a filter that matches all documents where the value of a field is an array of the specified size.
      Parameters:
      fieldName - the field name
      size - the size of the array
      Returns:
      the filter
      MongoDB documentation
      $size
    • bitsAllClear

      public static Bson bitsAllClear(String fieldName, long bitmask)
      Creates a filter that matches all documents where all of the bit positions are clear in the field.
      Parameters:
      fieldName - the field name
      bitmask - the bitmask
      Returns:
      the filter
      Since:
      3.2
      MongoDB documentation
      $bitsAllClear
      Since server release
      3.2
    • bitsAllSet

      public static Bson bitsAllSet(String fieldName, long bitmask)
      Creates a filter that matches all documents where all of the bit positions are set in the field.
      Parameters:
      fieldName - the field name
      bitmask - the bitmask
      Returns:
      the filter
      Since:
      3.2
      MongoDB documentation
      $bitsAllSet
      Since server release
      3.2
    • bitsAnyClear

      public static Bson bitsAnyClear(String fieldName, long bitmask)
      Creates a filter that matches all documents where any of the bit positions are clear in the field.
      Parameters:
      fieldName - the field name
      bitmask - the bitmask
      Returns:
      the filter
      Since:
      3.2
      MongoDB documentation
      $bitsAllClear
      Since server release
      3.2
    • bitsAnySet

      public static Bson bitsAnySet(String fieldName, long bitmask)
      Creates a filter that matches all documents where any of the bit positions are set in the field.
      Parameters:
      fieldName - the field name
      bitmask - the bitmask
      Returns:
      the filter
      Since:
      3.2
      MongoDB documentation
      $bitsAnySet
      Since server release
      3.2
    • geoWithin

      public static Bson geoWithin(String fieldName, Geometry geometry)
      Creates a filter that matches all documents containing a field with geospatial data that exists entirely within the specified shape.
      Parameters:
      fieldName - the field name
      geometry - the bounding GeoJSON geometry object
      Returns:
      the filter
      Since:
      3.1
      MongoDB documentation
      $geoWithin
      Since server release
      2.4
    • geoWithin

      public static Bson geoWithin(String fieldName, Bson geometry)
      Creates a filter that matches all documents containing a field with geospatial data that exists entirely within the specified shape.
      Parameters:
      fieldName - the field name
      geometry - the bounding GeoJSON geometry object
      Returns:
      the filter
      Since:
      3.1
      MongoDB documentation
      $geoWithin
      Since server release
      2.4
    • geoWithinBox

      public static Bson geoWithinBox(String fieldName, double lowerLeftX, double lowerLeftY, double upperRightX, double upperRightY)
      Creates a filter that matches all documents containing a field with grid coordinates data that exist entirely within the specified box.
      Parameters:
      fieldName - the field name
      lowerLeftX - the lower left x coordinate of the box
      lowerLeftY - the lower left y coordinate of the box
      upperRightX - the upper left x coordinate of the box
      upperRightY - the upper left y coordinate of the box
      Returns:
      the filter
      Since:
      3.1
      MongoDB documentation
      $geoWithin
      $box
      Since server release
      2.4
    • geoWithinPolygon

      public static Bson geoWithinPolygon(String fieldName, List<List<Double>> points)
      Creates a filter that matches all documents containing a field with grid coordinates data that exist entirely within the specified polygon.
      Parameters:
      fieldName - the field name
      points - a list of pairs of x, y coordinates. Any extra dimensions are ignored
      Returns:
      the filter
      Since:
      3.1
      MongoDB documentation
      $geoWithin
      $polygon
      Since server release
      2.4
    • geoWithinCenter

      public static Bson geoWithinCenter(String fieldName, double x, double y, double radius)
      Creates a filter that matches all documents containing a field with grid coordinates data that exist entirely within the specified circle.
      Parameters:
      fieldName - the field name
      x - the x coordinate of the circle
      y - the y coordinate of the circle
      radius - the radius of the circle, as measured in the units used by the coordinate system
      Returns:
      the filter
      Since:
      3.1
      MongoDB documentation
      $geoWithin
      $center
      Since server release
      2.4
    • geoWithinCenterSphere

      public static Bson geoWithinCenterSphere(String fieldName, double x, double y, double radius)
      Creates a filter that matches all documents containing a field with geospatial data (GeoJSON or legacy coordinate pairs) that exist entirely within the specified circle, using spherical geometry. If using longitude and latitude, specify longitude first.
      Parameters:
      fieldName - the field name
      x - the x coordinate of the circle
      y - the y coordinate of the circle
      radius - the radius of the circle, in radians
      Returns:
      the filter
      Since:
      3.1
      MongoDB documentation
      $geoWithin
      $centerSphere
      Since server release
      2.4
    • geoIntersects

      public static Bson geoIntersects(String fieldName, Bson geometry)
      Creates a filter that matches all documents containing a field with geospatial data that intersects with the specified shape.
      Parameters:
      fieldName - the field name
      geometry - the bounding GeoJSON geometry object
      Returns:
      the filter
      Since:
      3.1
      MongoDB documentation
      $geoIntersects
      Since server release
      2.4
    • geoIntersects

      public static Bson geoIntersects(String fieldName, Geometry geometry)
      Creates a filter that matches all documents containing a field with geospatial data that intersects with the specified shape.
      Parameters:
      fieldName - the field name
      geometry - the bounding GeoJSON geometry object
      Returns:
      the filter
      Since:
      3.1
      MongoDB documentation
      $geoIntersects
      Since server release
      2.4
    • near

      public static Bson near(String fieldName, Point geometry, @Nullable Double maxDistance, @Nullable Double minDistance)
      Creates a filter that matches all documents containing a field with geospatial data that is near the specified GeoJSON point.
      Parameters:
      fieldName - the field name
      geometry - the bounding GeoJSON geometry object
      maxDistance - the maximum distance from the point, in meters. It may be null.
      minDistance - the minimum distance from the point, in meters. It may be null.
      Returns:
      the filter
      Since:
      3.1
      MongoDB documentation
      $near
      Since server release
      2.4
    • near

      public static Bson near(String fieldName, Bson geometry, @Nullable Double maxDistance, @Nullable Double minDistance)
      Creates a filter that matches all documents containing a field with geospatial data that is near the specified GeoJSON point.
      Parameters:
      fieldName - the field name
      geometry - the bounding GeoJSON geometry object
      maxDistance - the maximum distance from the point, in meters. It may be null.
      minDistance - the minimum distance from the point, in meters. It may be null.
      Returns:
      the filter
      Since:
      3.1
      MongoDB documentation
      $near
      Since server release
      2.4
    • near

      public static Bson near(String fieldName, double x, double y, @Nullable Double maxDistance, @Nullable Double minDistance)
      Creates a filter that matches all documents containing a field with geospatial data that is near the specified point.
      Parameters:
      fieldName - the field name
      x - the x coordinate
      y - the y coordinate
      maxDistance - the maximum distance from the point, in radians. It may be null.
      minDistance - the minimum distance from the point, in radians. It may be null.
      Returns:
      the filter
      Since:
      3.1
      MongoDB documentation
      $near
      Since server release
      2.4
    • nearSphere

      public static Bson nearSphere(String fieldName, Point geometry, @Nullable Double maxDistance, @Nullable Double minDistance)
      Creates a filter that matches all documents containing a field with geospatial data that is near the specified GeoJSON point using spherical geometry.
      Parameters:
      fieldName - the field name
      geometry - the bounding GeoJSON geometry object
      maxDistance - the maximum distance from the point, in meters. It may be null.
      minDistance - the minimum distance from the point, in meters. It may be null.
      Returns:
      the filter
      Since:
      3.1
      MongoDB documentation
      $near
      Since server release
      2.4
    • nearSphere

      public static Bson nearSphere(String fieldName, Bson geometry, @Nullable Double maxDistance, @Nullable Double minDistance)
      Creates a filter that matches all documents containing a field with geospatial data that is near the specified GeoJSON point using spherical geometry.
      Parameters:
      fieldName - the field name
      geometry - the bounding GeoJSON geometry object
      maxDistance - the maximum distance from the point, in meters. It may be null.
      minDistance - the minimum distance from the point, in meters. It may be null.
      Returns:
      the filter
      Since:
      3.1
      MongoDB documentation
      $near
      Since server release
      2.4
    • nearSphere

      public static Bson nearSphere(String fieldName, double x, double y, @Nullable Double maxDistance, @Nullable Double minDistance)
      Creates a filter that matches all documents containing a field with geospatial data that is near the specified point using spherical geometry.
      Parameters:
      fieldName - the field name
      x - the x coordinate
      y - the y coordinate
      maxDistance - the maximum distance from the point, in radians. It may be null.
      minDistance - the minimum distance from the point, in radians. It may be null.
      Returns:
      the filter
      Since:
      3.1
      MongoDB documentation
      $near
      Since server release
      2.4
    • jsonSchema

      public static Bson jsonSchema(Bson schema)
      Creates a filter that matches all documents that validate against the given JSON schema document.
      Parameters:
      schema - the JSON schema to validate against
      Returns:
      the filter
      Since:
      3.6
      MongoDB documentation
      $jsonSchema
      Since server release
      3.6
    • empty

      public static Bson empty()
      Creates an empty filter that will match all documents.
      Returns:
      the filter
      Since:
      4.2