複数ドキュメントの挿入
ドキュメントを一つずつ挿入するのは非効率的です。一度に複数のドキュメントを追加するために、MongoDB は insertMany() メソッドを提供しています。これはバルクインサート操作として知られており、データベースへのネットワーク往復回数を削減します。
このステップでは、単一のコマンドで books コレクションにさらに 3 冊の本を追加します。mongosh シェルにまだ接続しており、bookstore データベースに切り替わっていることを確認してください。
insertMany() メソッドを使用し、ドキュメントオブジェクトの配列を渡します。
db.books.insertMany([
{
title: "1984",
author: "George Orwell",
year: 1949,
genres: ["Dystopian", "Science Fiction"],
stock: 15
},
{
title: "To Kill a Mockingbird",
author: "Harper Lee",
year: 1960,
genres: ["Classic", "Fiction"],
stock: 5
},
{
title: "Pride and Prejudice",
author: "Jane Austen",
year: 1813,
genres: ["Romance", "Classic"],
stock: 12
}
]);
出力は、操作が認識されたことを確認し、挿入した 3 つのドキュメントそれぞれの _id 値を一覧表示します。
{
acknowledged: true,
insertedIds: {
'0': ObjectId("652f8e3e111a2b3c4d5e6f79"),
'1': ObjectId("652f8e3e111a2b3c4d5e6f7a"),
'2': ObjectId("652f8e3e111a2b3c4d5e6f7b")
}
}
ドキュメントが追加されたことを確認するには、コレクション内のドキュメントの総数をカウントできます。
db.books.countDocuments();
結果は 4 になるはずです。これは、前のステップの 1 つのドキュメントと、先ほど追加した 3 つのドキュメントを表します。
4