Docs Menu
Docs Home
/
MongoDB Manual
/ / / /

$pop

On this page

  • Definition
  • Behavior
  • Examples
$pop

The $pop operator removes the first or last element of an array. Pass $pop a value of -1 to remove the first element of an array and 1 to remove the last element in an array.

The $pop operator has the form:

{ $pop: { <field>: <-1 | 1>, ... } }

To specify a <field> in an embedded document or in an array, use dot notation.

In MongoDB 4.4 and earlier, update operators process document fields in lexicographic order. See Update Operators Behavior for details.

The $pop operation fails if the <field> is not an array.

If the $pop operator removes the last item in the <field>, the <field> will then hold an empty array.

Given the following document in a collection students:

{ _id: 1, scores: [ 8, 9, 10 ] }

The following example removes the first element (8) in the scores array:

db.students.update( { _id: 1 }, { $pop: { scores: -1 } } )

After the operation, the updated document has the first item 8 removed from its scores array:

{ _id: 1, scores: [ 9, 10 ] }

Given the following document in a collection students:

{ _id: 1, scores: [ 9, 10 ] }

The following example removes the last element (10) in the scores array by specifying 1 in the $pop expression:

db.students.update( { _id: 1 }, { $pop: { scores: 1 } } )

After the operation, the updated document has the last item 10 removed from its scores array:

{ _id: 1, scores: [ 9 ] }

Tip

See also:

Back

$addToSet