Menu Docs

Página inicial do DocsGo

Excluir um documento

Nesta página

  • Visão geral
  • Dados de amostra
  • Excluir operações
  • Parâmetros
  • Valor de retorno
  • Informações adicionais
  • Documentação da API

Neste guia, você pode aprender como remover documentos de suas coleções MongoDB usando operações de exclusão.

Para executar o exemplo neste guia, carregue estes documentos na collection tea.ratings com o seguinte trecho:

coll := client.Database("tea").Collection("ratings")
docs := []interface{}{
bson.D{{"type", "Masala"}, {"rating", 10}},
bson.D{{"type", "Earl Grey"}, {"rating", 7}},
bson.D{{"type", "Oolong"}, {"rating", 10}},
bson.D{{"type", "Assam"}, {"rating", 7}},
}
result, err := coll.InsertMany(context.TODO(), docs)
if err != nil {
panic(err)
}
fmt.Printf("Number of documents inserted: %d\n", len(result.InsertedIDs))

Dica

Bancos de Dados e Coleções Inexistentes

Se o banco de dados e a collection necessários não existirem quando você executar uma operação de escrita, o servidor implicitamente os criará.

Cada documento contém uma classificação para um tipo de chá, que corresponde aos campos type e rating .

Use excluir operações para remover dados do MongoDB. As operações de exclusão consistem nos seguintes métodos:

  • DeleteOne(), que exclui o primeiro documento que corresponde ao filtro

  • DeleteMany(), que exclui todos os documentos que correspondem ao filtro

Dica

Se um documento corresponder ao seu filtro ao executar o método DeleteMany(), será equivalente à execução do método DeleteOne().

Os métodos DeleteOne() e DeleteMany() esperam que você passe um tipo Context e um filtro de query non-nil especificando quais documentos devem corresponder.

Ambos recebem opcionalmente um tipo DeleteOptions como terceiro parâmetro, que representa opções que você pode usar para configurar a operação de exclusão. Se você não especificar um DeleteOptions, o driver utilizará os valores padrão para cada opção.

O tipo DeleteOptions permite a você configurar opções com os seguintes métodos:

Método
Descrição
SetHint()
The index to use to scan for documents to delete.
Default: nil
SetCollation()
The type of language collation to use when sorting results.
Default: nil

Os métodos DeleteOne() e DeleteMany() retornam um tipo de DeleteResult. Este tipo contém a propriedade DeletedCount, que declara o número de documentos excluídos. Se não houver nenhuma correspondência com seu filtro, nenhum documento será excluído e DeletedCount será 0.

O exemplo abaixo executa o seguinte com o método DeleteMany():

  • Corresponde e exclui documentos onde o rating é maior que 8

  • Especifica o método para utilizar o _id como o índice

filter := bson.D{{"rating", bson.D{{"$gt", 8}}}}
opts := options.Delete().SetHint(bson.D{{"_id", 1}})
result, err := coll.DeleteMany(context.TODO(), filter, opts)
if err != nil {
panic(err)
}
fmt.Printf("Number of documents deleted: %d\n", result.DeletedCount)

Dica

Se o exemplo anterior usasse o método DeleteOne() em vez de DeleteMany(), o driver excluiria o primeiro dos dois documentos correspondentes.

Para obter exemplos executáveis das operações de exclusão, consulte os seguintes exemplos de uso:

Para saber mais sobre como executar as operações mencionadas, consulte os seguintes guias:

Para saber como o driver usa o Contexto, consulte Contexto.

Para saber mais sobre qualquer um dos métodos ou tipos discutidos neste guia, consulte a seguinte documentação da API:

←  Insira um documentoAlterar um documento →
Dê Feedback
© 2022 MongoDB, Inc.

Sobre

© 2022 MongoDB, Inc.