- Reference >
- Query, Update and Projection Operators
Query, Update and Projection Operators
Query Selectors
Comparison
Name | Description |
---|
$all | Matches arrays that contain all elements specified in the query. |
$gt | Matches values that are greater than the value specified in the query. |
$gte | Matches values that are equal to or greater than the value specified in the query. |
$in | Matches any of the values that exist in an array specified in the query. |
$lt | Matches values that are less than the value specified in the query. |
$lte | Matches values that are less than or equal to the value specified in the query. |
$ne | Matches all values that are not equal to the value specified in the query. |
$nin | Matches values that do not exist in an array specified to the query. |
Logical
Name | Description |
---|
$or | Joins query clauses with a logical OR returns all documents that match the conditions of either clause. |
$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. |
Element
Name | Description |
---|
$exists | Matches documents that have the specified field. |
$mod | Performs a modulo operation on the value of a field and selects documents with a specified result. |
$type | Selects documents if a field is of the specified type. |
JavaScript
Name | Description |
---|
$where | Matches documents that satisfy a JavaScript expression. |
$regex | Selects documents where values match a specified regular expression. |
Geospatial
Name | Description |
---|
$geoWithin | Selects geometries within a bounding GeoJSON geometry. |
$geoIntersects | Selects geometries that intersect with a GeoJSON geometry. |
$near | Returns geospatial objects in proximity to a point. |
$nearSphere | Returns geospatial objects in proximity to a point on a sphere. |
Array
Name | Description |
---|
$elemMatch | Selects documents if element in the array field matches all the specified $elemMatchcondition. |
$size | Selects documents if the array field is a specified size. |
Update Operators
Fields
Name | Description |
---|
$inc | Increments the value of the field by the specified amount. |
$rename | Renames a field. |
$setOnInsert | Sets the value of a field upon documentation creation during an upsert. Has no effect on update operations that modify existing documents. |
$set | Sets the value of a field in an existing document. |
$unset | Removes the specified field from an existing document. |
Array
Operators
Name | Description |
---|
$ | Acts as a placeholder to update the first element that matches the query condition in an update. |
$addToSet | Adds elements to an existing array only if they do not already exist in the set. |
$pop | Removes the first or last item of an array. |
$pullAll | Removes multiple values from an array. |
$pull | Removes items from an array that match a query statement. |
$pushAll | Deprecated. Adds several items to an array. |
$push | Adds an item to an array. |
Modifiers
Name | Description |
---|
$each | Modifies the $push and $addToSet operators to append multiple items for array updates. |
$slice | Modifies the $push operator to limit the size of updated arrays. |
$sort | Modifies the $push operator to reorder documents stored in an array. |
Bitwise
Name | Description |
---|
$bit | Performs bitwise AND and OR updates of integer values. |
Isolation
Name | Description |
---|
$isolated | Modifies behavior of multi-updates to improve the isolation of the operation. |
Projection Operators
Name | Description |
---|
$ | Projects the first element in an array that matches the query condition. |
$elemMatch | Projects only the first element from an array that matches the specified $elemMatchcondition. |
$slice | Limits the number of elements projected from an array. Supports skip and limit slices. |
출처 - http://docs.mongodb.org/manual/reference/operator/