mongoDB ドキュメント(レコード)を複数件削除する
mongoDBで、ドキュメント(レコード)を複数件削除する手順を記述してます。「deleteMany」で削除したいプロパティ名を配列で指定することで削除できます。
環境
- OS CentOS Stream release 9
- MongoDB 6.0.2
手順
ドキュメント(レコード)を複数件削除するには、「deleteMany」を使用します。
db.foo.deleteMany({
"プロパティ名": { $in : ["値","値"] }
})
実際に、以下のデータベース「hoge」にある「foo」というコレクション(テーブル)のドキュメント(レコード)を使用して動作を確認してみます。
> use hoge
> db.foo.find()
[
{ "_id" : ObjectId("61c3d6b0b72dd2b156014feb"), "name" : "itiro", "age" : 10, "gender" : "m" }
{ "_id" : ObjectId("61c3d6bcb72dd2b156014fec"), "name" : "jiro", "age" : 20, "gender" : "m" }
{ "_id" : ObjectId("61c3ed83471110248d164da0"), "name" : "itiro", "age" : 10, "gender" : "m" }
{ "_id" : ObjectId("61c3ed83471110248d164da1"), "name" : "jiro", "age" : 20, "gender" : "m" }
{ "_id" : ObjectId("61c3ed83471110248d164da2"), "name" : "saburo", "age" : 30, "gender" : "m" }
{ "_id" : ObjectId("61c3ed83471110248d164da3"), "name" : "jiro", "age" : 40, "gender" : "f" }
{ "_id" : ObjectId("61c3ed83471110248d164da4"), "name" : "jiro", "age" : 50, "gender" : "x" }
{ "_id" : ObjectId("61c3ed83471110248d164da5"), "name" : "jiro", "age" : 60, "gender" : "x" }
{ "_id" : ObjectId("61c3ed83471110248d164da6"), "name" : "jiro", "age" : 70, "gender" : "x" }
{ "_id" : ObjectId("61c3ed83471110248d164da7"), "name" : "jiro", "age" : 80, "gender" : "x" }
{ "_id" : ObjectId("61c3ed83471110248d164da8"), "name" : "jiro", "age" : 90, "gender" : "x" }
{ "_id" : ObjectId("61c3ed83471110248d164da9"), "name" : "jiro", "age" : 100, "gender" : "x" }
]
nameが「jiro」と「saburo」のものを削除します。
> db.foo.deleteMany({
"name": { $in : ["jiro","saburo"] }
})
{ "acknowledged" : true, "deletedCount" : 9 }
削除されていることが確認できます。
> db.foo.find()
[
{ "_id" : ObjectId("61c56d4296ea42d9d2c7c53a"), "name" : "itiro", "age" : 10, "gender" : "m" }
]
-
前の記事
javascript setの値に条件を指定して新しいsetを生成する 2022.12.21
-
次の記事
Ruby 切り捨てを行う 2022.12.21
コメントを書く