11.5. Excluindo Documentos no MongoDB: Exclusão de Documentos com Condições

Uma das operações mais críticas em qualquer sistema de gerenciamento de banco de dados é a exclusão de documentos. No MongoDB, isso não é diferente. A exclusão de documentos é uma tarefa que deve ser realizada com muito cuidado, pois uma vez que um documento é excluído, ele não pode ser recuperado. Nesta seção, vamos discutir como excluir documentos no MongoDB com condições.

O MongoDB fornece dois métodos para excluir documentos de uma coleção: deleteOne() e deleteMany(). Ambos os métodos aceitam um objeto de condição como argumento. Este objeto de condição é semelhante ao que usamos na operação de busca. Ele especifica as condições que os documentos devem atender para serem excluídos.

Exclusão de Documentos com Condições usando deleteOne()

O método deleteOne() exclui o primeiro documento que corresponde à condição especificada. Por exemplo, se quisermos excluir um documento cujo campo 'name' é 'John', podemos fazer isso da seguinte maneira:

db.collection('users').deleteOne({ name: 'John' });

Este comando excluirá o primeiro documento na coleção 'users' onde o campo 'name' é 'John'. Se houver vários documentos que atendam a essa condição, apenas o primeiro será excluído.

Exclusão de Documentos com Condições usando deleteMany()

O método deleteMany() exclui todos os documentos que correspondem à condição especificada. Por exemplo, se quisermos excluir todos os documentos cujo campo 'age' é menor que 18, podemos fazer isso da seguinte maneira:

db.collection('users').deleteMany({ age: { $lt: 18 } });

Este comando excluirá todos os documentos na coleção 'users' onde o campo 'age' é menor que 18. Ao contrário do método deleteOne(), o método deleteMany() não para após excluir o primeiro documento que atende à condição. Ele continua a percorrer a coleção até que todos os documentos que atendam à condição sejam excluídos.

Exclusão de Documentos com Condições Complexas

As condições para exclusão de documentos não precisam ser simples. Podemos especificar condições complexas usando operadores lógicos e de comparação. Por exemplo, se quisermos excluir todos os documentos cujo campo 'age' é menor que 18 e cujo campo 'country' é 'USA', podemos fazer isso da seguinte maneira:

db.collection('users').deleteMany({ age: { $lt: 18 }, country: 'USA' });

Este comando excluirá todos os documentos na coleção 'users' onde o campo 'age' é menor que 18 e o campo 'country' é 'USA'. As condições são avaliadas em conjunto, o que significa que um documento deve atender a todas as condições para ser excluído.

Conclusão

A exclusão de documentos é uma operação crítica que deve ser realizada com cuidado. No MongoDB, podemos excluir documentos usando os métodos deleteOne() e deleteMany(), que aceitam um objeto de condição como argumento. As condições podem ser simples ou complexas, dependendo das necessidades do nosso aplicativo.

Agora responda o exercício sobre o conteúdo:

Qual é a diferença entre os métodos deleteOne() e deleteMany() no MongoDB?

Você acertou! Parabéns, agora siga para a próxima página

Você errou! Tente novamente.

Imagem do artigo Excluindo documentos no MongoDB: Exclusão de coleções inteiras

Próxima página do Ebook Gratuito:

60Excluindo documentos no MongoDB: Exclusão de coleções inteiras

3 minutos

Ganhe seu Certificado deste Curso Gratuitamente! ao baixar o aplicativo Cursa e ler o ebook por lá. Disponível na Google Play ou App Store!

Disponível no Google Play Disponível no App Store

+ de 6,5 milhões
de alunos

Certificado Gratuito e
Válido em todo o Brasil

48 mil exercícios
gratuitos

4,8/5 classificação
nas lojas de apps

Cursos gratuitos em
vídeo, áudio e texto