この章では、Golang MongoDBのドキュメント削除操作について説明します。

サポートされている削除操作

Collection.DeleteOne  - 条件に基づいてドキュメントを削除する
Collection.DeleteMany  - 一致する条件に基づいてドキュメントを削除する

ドキュメントの削除

res, err := coll.DeleteOne(
						context.TODO(), // コンテキストパラメータ
						bson.D{{"name", "bob"}} // クエリ条件 name=bob を設定
					)
if err != nil {
	log.Fatal(err)
}
// 削除されたドキュメントの数を出力
fmt.Printf("%v 個のドキュメントを削除しました\n", res.DeletedCount)

クエリ条件に基づいてドキュメントを削除します。

バルクドキュメントの削除

// クエリ条件 name=bob に基づいて一括して一致するドキュメントを削除する
res, err := coll.DeleteMany(context.TODO(), bson.D{{"name", "bob"}})
if err != nil {
	log.Fatal(err)
}
// 削除されたドキュメントの数を出力
fmt.Printf("%v 個のドキュメントを削除しました\n", res.DeletedCount)