Comparison Query Operators
Name | Description |
---|---|
$eq |
Matches values that are equal to a specified value. |
$gt |
Matches values that are greater than a specified value. |
$gte |
Matches values that are greater than or equal to a specified value. |
$in |
Matches any of the values specified in an array. |
$lt |
Matches values that are less than a specified value. |
$lte |
Matches values that are less than or equal to a specified value. |
$ne |
Matches all values that are not equal to a specified value. |
$nin |
Matches none of the values specified in an array. |
Logical Query Operators
Name | Description |
---|---|
$and |
Joins query clauses with a logical AND returns all documents that match the conditions of both clauses. |
$not |
Inverts the effect of a query expression and returns documents that do not match the query expression. |
$nor |
Joins query clauses with a logical NOR returns all documents that fail to match both clauses. |
$or |
Joins query clauses with a logical OR returns all documents that match the conditions of either clause. |
Element Query Operators
Name | Description |
---|---|
$exists |
Matches documents that have the specified field. |
$type |
Selects documents if a field is of the specified type. |
Evaluation Query Operators
Name | Description |
---|---|
$expr |
Allows use of aggregation expressions within the query language. |
$jsonSchema |
Validate documents against the given JSON Schema. |
$mod |
Performs a modulo operation on the value of a field and selects documents with a specified result. |
$regex |
Selects documents where values match a specified regular expression. |
$text |
Performs text search. |
$where |
Matches documents that satisfy a JavaScript expression. |
Geospatial Query Operators
Query Selectors
Name | Description |
---|---|
$geoIntersects |
Selects geometries that intersect with a GeoJSON geometry. The 2dsphere index supports $geoIntersects . |
$geoWithin |
Selects geometries within a bounding GeoJSON geometry. The 2dsphere and 2d indexes support $geoWithin . |
$near |
Returns geospatial objects in proximity to a point. Requires a geospatial index. The 2dsphere and 2d indexes support $near . |
$nearSphere |
Returns geospatial objects in proximity to a point on a sphere. Requires a geospatial index. The 2dsphere and 2d indexes support $nearSphere . |
Geometry Specifiers
Name | Description |
---|---|
$box |
Specifies a rectangular box using legacy coordinate pairs for $geoWithin queries. The 2d index supports $box . |
$center |
Specifies a circle using legacy coordinate pairs to $geoWithin queries when using planar geometry. The 2d index supports $center . |
$centerSphere |
Specifies a circle using either legacy coordinate pairs or GeoJSON format for $geoWithin queries when using spherical geometry. The 2dsphere and 2d indexes support $centerSphere . |
$geometry |
Specifies a geometry in GeoJSON format to geospatial query operators. |
$maxDistance |
Specifies a maximum distance to limit the results of $near and $nearSphere queries. The 2dsphere and 2d indexes support $maxDistance . |
$minDistance |
Specifies a minimum distance to limit the results of $near and $nearSphere queries. For use with 2dsphere index only. |
$polygon |
Specifies a polygon to using legacy coordinate pairs for $geoWithin queries. The 2d index supports $center . |
$uniqueDocs |
Deprecated. Modifies a $geoWithin and $near queries to ensure that even if a document matches the query multiple times, the query returns the document once. |
Array Query Operators
Name | Description |
---|---|
$all |
Matches arrays that contain all elements specified in the query. |
$elemMatch |
Selects documents if element in the array field matches all the specified $elemMatch conditions. |
$size |
Selects documents if the array field is a specified size. |
Bitwise Query Operators
Name | Description |
---|---|
$bitsAllClear |
Matches numeric or binary values in which a set of bit positions all have a value of 0 . |
$bitsAllSet |
Matches numeric or binary values in which a set of bit positions all have a value of 1 . |
$bitsAnyClear |
Matches numeric or binary values in which any bit from a set of bit positions has a value of 0 . |
$bitsAnySet |
Matches numeric or binary values in which any bit from a set of bit positions has a value of 1 . |