MongoDB
 Computer >> コンピューター >  >> プログラミング >> MongoDB

MongoDBコレクションのすべてのドキュメントに新しいフィールドを追加しますか?


MongoDBコレクション内のすべてのドキュメントに新しいフィールドを追加するには、$set演算子を使用できます。構文は次のとおりです。

db.yourCollectionName.update({}, { $set: {"yourFieldName": yourValue} }, false, true);

上記の構文を理解するために、いくつかのドキュメントを使用してコレクションを作成しましょう。ドキュメントを含むコレクションを作成するためのクエリは次のとおりです。

>db.addNewFieldToEveryDocument.insertOne({"StudentName":"John","StudentAddress":"US
"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c6efc0b6fd07954a48906ae")
}
>db.addNewFieldToEveryDocument.insertOne({"StudentName":"David","StudentAddress":"U
K"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c6efc0b6fd07954a48906af")
}
>db.addNewFieldToEveryDocument.insertOne({"StudentName":"Carol","StudentAddress":"U
K"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c6efc0b6fd07954a48906b0")
}
>db.addNewFieldToEveryDocument.insertOne({"StudentName":"Bob","StudentAddress":"US"
});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c6efc0b6fd07954a48906b1")
}

find()メソッドを使用して、コレクションのすべてのドキュメントを表示します。クエリは次のとおりです。

> db.addNewFieldToEveryDocument.find().pretty();

出力は次のとおりです。

{
   "_id" : ObjectId("5c6efc0b6fd07954a48906ae"),
   "StudentName" : "John",
   "StudentAddress" : "US"
}
{
   "_id" : ObjectId("5c6efc0b6fd07954a48906af"),
   "StudentName" : "David",
   "StudentAddress" : "UK"
}
{
   "_id" : ObjectId("5c6efc0b6fd07954a48906b0"),
   "StudentName" : "Carol",
   "StudentAddress" : "UK"
}
{
   "_id" : ObjectId("5c6efc0b6fd07954a48906b1"),
   "StudentName" : "Bob",
   "StudentAddress" : "US"
}

以下は、すべてのドキュメントに新しいフィールドを追加するためのクエリです。

> db.addNewFieldToEveryDocument.update({}, { $set: {"StudentAge": 24} }, false, true);
WriteResult({ "nMatched" : 4, "nUpserted" : 0, "nModified" : 4 })

上記では、すべてのドキュメントに新しいフィールド「StudentAge」:24を追加しました。 「StudentAge」:24フィールドがすべてのドキュメントに正常に追加されているかどうかを確認してみましょう。クエリは次のとおりです。

> db.addNewFieldToEveryDocument.find().pretty();

出力は次のとおりです。

{
   "_id" : ObjectId("5c6efc0b6fd07954a48906ae"),
   "StudentName" : "John",
   "StudentAddress" : "US",
   "StudentAge" : 24
}
{
   "_id" : ObjectId("5c6efc0b6fd07954a48906af"),
   "StudentName" : "David",
   "StudentAddress" : "UK",
   "StudentAge" : 24
}
{
   "_id" : ObjectId("5c6efc0b6fd07954a48906b0"),
   "StudentName" : "Carol",
   "StudentAddress" : "UK",
   "StudentAge" : 24
}
{
   "_id" : ObjectId("5c6efc0b6fd07954a48906b1"),
   "StudentName" : "Bob",
   "StudentAddress" : "US",
   "StudentAge" : 24
}

  1. MongoDBコレクション内のすべてのドキュメントに新しいフィールドを追加する方法

    新しいフィールドを追加するには、MongoDBで$addFieldsを使用します。ドキュメントを使用してコレクションを作成しましょう- > db.demo712.insertOne({"Name":"John"}); {    "acknowledged" : true,    "insertedId" : ObjectId("5ea85f675d33e20ed1097b82") } > db.demo712.insertOne({"

  2. 既存のMongoDBドキュメントに特定のデータ型(リスト、オブジェクト)のフィールドを追加するにはどうすればよいですか?

    $setを使用できます。ドキュメントを使用してコレクションを作成しましょう- > db.demo732.insertOne({_id:1,Language:"English"}); { "acknowledged" : true, "insertedId" : 1 } > db.demo732.insertOne({_id:2,Language:"Hindi"}); { "acknowledged" : true, "insertedId" : 2 } find