I am new to Mongo and I have a question about deleting documents using PyMongo.
I have a collection called mycollection
. It has documents looking like this:
{
"field1":"value1",
"field2":"value2",
"array_field": [
"id1",
"id2
]
}
I want to delete all documents in the collection which has id1
in the array_field
.
How can I do this? (I am using PyMongo, I would appreciate examples based on it :) )
CodePudding user response:
this should do
import pymongo
client = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = client["DATABASE"]
col = mydb["mycoll"]
query = {"array_field": "id1"}
d = col.delete_many(query)
print(f"{d.deleted_count} documents deleted")
CodePudding user response:
db.collection.deleteMany({
"array_field": {
$in: [
"id1"
]
}
})
Check the mongoplayground link: https://mongoplayground.net/p/nkhSCRyR9K-
https://www.mongodb.com/docs/manual/reference/operator/query/