如何使用deleteMany()删除MongoDB中的多个文档?

How to delete multiple documents in MongoDB using deleteMany()?

让我们首先创建包含文档的集合-

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
> db.deleteMultipleDocumentsDemo.insertOne({"StudentFirstName":"Larry"});
{
"acknowledged" : true,
"insertedId" : ObjectId("5ce00b07bf3115999ed51214")
}
> db.deleteMultipleDocumentsDemo.insertOne({"StudentFirstName":"Chris"});
{
"acknowledged" : true,
"insertedId" : ObjectId("5ce00b0bbf3115999ed51215")
}
> db.deleteMultipleDocumentsDemo.insertOne({"StudentFirstName":"David"});
{
"acknowledged" : true,
"insertedId" : ObjectId("5ce00b0fbf3115999ed51216")
}
> db.deleteMultipleDocumentsDemo.insertOne({"StudentFirstName":"Bob"});
{
"acknowledged" : true,
"insertedId" : ObjectId("5ce00b12bf3115999ed51217")
}
> db.deleteMultipleDocumentsDemo.insertOne({"StudentFirstName":"Carol"});
{
"acknowledged" : true,
"insertedId" : ObjectId("5ce00b18bf3115999ed51218")
}

以下是在find()方法的帮助下显示集合中所有文档的查询-

1
> db.deleteMultipleDocumentsDemo.find();

这将产生以下输出-

1
2
3
4
5
{"_id" : ObjectId("5ce00b07bf3115999ed51214"),"StudentFirstName" :"Larry" }
{"_id" : ObjectId("5ce00b0bbf3115999ed51215"),"StudentFirstName" :"Chris" }
{"_id" : ObjectId("5ce00b0fbf3115999ed51216"),"StudentFirstName" :"David" }
{"_id" : ObjectId("5ce00b12bf3115999ed51217"),"StudentFirstName" :"Bob" }
{"_id" : ObjectId("5ce00b18bf3115999ed51218"),"StudentFirstName" :"Carol" }

以下是在MongoDB中删除多个文档的查询-

1
2
> db.deleteMultipleDocumentsDemo.deleteMany({StudentFirstName: {$in: ["Larry","David","Carol"]}});
{"acknowledged" : true,"deletedCount" : 3 }

让我们再次显示文档-

1
> db.deleteMultipleDocumentsDemo.find();

这将产生以下输出-

1
2
{"_id" : ObjectId("5ce00b0bbf3115999ed51215"),"StudentFirstName" :"Chris" }
{"_id" : ObjectId("5ce00b12bf3115999ed51217"),"StudentFirstName" :"Bob" }