When working with MongoDB, sometimes you might accidentally merge unwanted data into a collection — like an extra field that doesn't belong. If you're using MongoDB Atlas, it's entirely possible to clean up your documents using the Aggregation Pipeline, no backend code required.
Let’s walk through removing a field (like blogs
) from all documents using just the MongoDB Atlas UI.
🔥 The Problem
You accidentally ran a $merge
operation that added a blogs
field to every document in your files
collection. Now you want to remove that field from every document — without touching the backend.
🧰 Tools Used
MongoDB Atlas
Aggregation Pipeline Builder
No code or shell required!
✅ Step-by-Step: Remove a Field Using Aggregation
🟨 Step 1: Go to Aggregations
Open your Atlas project.
Navigate to your
files
collection.Click on the "Aggregations" tab.
🟩 Step 2: Add $unset
Stage
This stage removes the field from the documents in the pipeline result.
{
"$unset": "blogs"
}
This will immediately show a preview of your documents without the blogs
field.
✅ Important: Don’t include a
$match
stage unless you want to only update certain documents.
🟥 Step 3: Add $merge
Stage
This is the step that actually applies the change to the database.
Use this configuration:
{
"into": "files",
"whenMatched": "replace",
"whenNotMatched": "discard"
}
✅ Why replace
and not merge
?
"merge"
preserves untouched fields from the original document — meaning removed fields can sneak back in."replace"
fully overwrites each document with the cleaned-up version — ensuring removed fields stay gone.
▶️ Step 4: Click “Run”
Once your pipeline is ready, the “Run” button should appear. Click it to process and update all documents.
🧪 Final Check
To make sure the cleanup worked:
Go back to your Documents tab.
Run a filter:
{ "blogs": { "$exists": true } }
✅ If nothing shows up — your cleanup worked!
🧵 Conclusion
Removing a field from all MongoDB documents is easy and safe using the Aggregation Pipeline in Atlas. Just remember:
Use
$unset
to drop the field.Use
$merge
with"whenMatched": "replace"
to fully apply the change.
No shell. No code. Just clicks.