この章では、mongoシェルを使用してMongoDBドキュメントを削除する方法について紹介します。

テストデータの準備

insertManyコレクションにテストデータを一括挿入します。

db.inventory.insertMany( [
   { item: "journal", qty: 25, size: { h: 14, w: 21, uom: "cm" }, status: "A" },
   { item: "notebook", qty: 50, size: { h: 8.5, w: 11, uom: "in" }, status: "P" },
   { item: "paper", qty: 100, size: { h: 8.5, w: 11, uom: "in" }, status: "D" },
   { item: "planner", qty: 75, size: { h: 22.85, w: 30, uom: "cm" }, status: "D" },
   { item: "postcard", qty: 45, size: { h: 10, w: 15.25, uom: "cm" }, status: "A" },
] );

すべてのドキュメントを削除

inventoryコレクション内のすべてのドキュメントを削除します。

db.inventory.deleteMany({})

ここでは、空のクエリ条件{}が渡されます。

条件に基づいて一括のドキュメントを削除

db.inventory.deleteMany({ status: "A" })

説明:

  • statusフィールドが "A" に一致するinventoryコレクション内のドキュメントを削除します。
  • deleteMany関数はクエリ条件をサポートしています。

条件に基づいて単一のドキュメントを削除

db.inventory.deleteOne( { status: "D" } )

説明:

  • statusフィールドが "D" に一致するinventoryコレクション内の最初のドキュメントを削除します。