Para agentes de IA: um índice de documentação está disponível em https://www.mongodb.com/pt-br/docs/llms.txt — as versões de markdown de todas as páginas estão disponíveis anexando .md a qualquer caminho de URL.
Menu Docs

$pop (operador de atualizar)

$pop

O operador$popremove o primeiro ou último elemento de uma array. Passe para$popum valor de -1 para remover o primeiro elemento de uma array e 1 para remover o último elemento de uma array.

O operador tem o $pop formato:

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

Para especificar um <field> em um documento incorporado ou em uma array, use a notação de ponto.

A partir do MongoDB 5.0, os operadores de atualização processam campos de documento com nomes baseados em cadeia de caracteres em ordem lexicográfica. Os campos com nomes numéricos são processados em ordem numérica. Consulte Atualizar Comportamento de Operadores para detalhes.

A operação falhará se $pop o <field> não for uma array.

Se o operador remover o último $pop item <field> do,<field> manterá uma array vazia.

A partir do MongoDB,5.0 mongod não gera mais um erro quando você usa um operador de atualização como $pop com uma expressão de operando vazia ( { } ). Uma atualização vazia não resulta em nenhuma alteração e nenhuma entrada no oplog é criada (o que significa que a operação é um no-op).

Crie a coleção students:

db.students.insertOne( { _id: 1, scores: [ 8, 9, 10 ] } )

O exemplo seguinte remove o primeiro elemento, 8, da array scores:

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

O primeiro elemento, 8, foi removido da array scores:

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

Adicione o seguinte documento à coleção students:

db.students.insertOne( { _id: 10, scores: [ 9, 10 ] } )

O exemplo seguinte remove o último elemento,, 10 da scores array especificando 1 na expressão $pop :

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

O último elemento, 10, foi removido da array scores:

{ _id: 10, scores: [ 9 ] }
Avalie esta página