Deleting a key/value from existing MongoDB entry

mongodb

Solution

Try `$unset` in a call to `update()`.

Like this:

db.collection_name.update({ _id: 1234 }, { $unset : { description : 1} })

And, as vikneshwar commented, if you want to remove one field from all (or multiple) documents you can use `updateMany()` like this:

db.collection_name.updateMany({}, { $unset : { description : 1} })

Problem

I need to delete a certain key and value from every entry in a particular collection. I've looked into remove and that seems to be for only entire entries. Looking at update, I don't believe updating a particular key with null or an empty string would achieve what I'm trying to do. I'm very much a beginner with mongodb, so please excuse my ignorance. Long story short, how can I turn ``` { "_id" : 1234, "name" : "Chris", "description" : "Awesome" } ``` into ``` { "_id" : 1234, "name" : "Chris" } ``` without deleting the entry and creating a new one, or using any non-mongodb commands? Thanks!

Original source

Related problems