Atualizar vários documentos
Você pode atualizar vários documentos em uma collection usando o método UpdateMany()
.
Exemplo
Dica
Leia os Exemplos de uso para saber como executar este exemplo.
O exemplo a seguir executa o seguinte na coleção listingsAndReviews
:
Corresponde aos documentos em que o campo de mercado do subdocumento de endereço
address.market
é "Sydney"Atualiza
price
nos documentos correspondentes em 1,15 vezes
coll := client.Database("sample_airbnb").Collection("listingsAndReviews") filter := bson.D{{"address.market", "Sydney"}} // Creates instructions to update the values of the "price" field update := bson.D{{"$mul", bson.D{{"price", 1.15}}}} // Updates documents in which the value of the "address.market" // field is "Sydney" result, err := coll.UpdateMany(context.TODO(), filter, update) if err != nil { panic(err) }
Veja um exemplo totalmente executável de .
Resultado esperado
Após executar o exemplo completo, você pode encontrar os seguintes documentos atualizados na collection listingsAndReviews
:
// results truncated ... { "_id" : "10091713", ... , "name" : "Surry Hills Studio", ... , "price" : 181.00, ... }, { "_id" : "9908871", ... , "name" : "Family friendly beach house", ... , "price" : 751.00, ... }, { "_id" : "20989061", ... , "name" : "Big and sunny Narraben room", ... , "price" : 60.00, ... }, ...
Para obter um exemplo de como encontrar vários documentos, consulte Encontrar vários documentos.
Informações adicionais
Para saber mais sobre como substituir documentos, especificar filtros de query e lidar com possíveis erros, consulte Modificar documentos.
Para saber mais sobre operadores de atualização, consulte a documentação de referência do operador de atualização do MongoDB.