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

MongoDBで1つのドキュメントのみを更新します


コレクション内の1つのドキュメントのみを更新します。 updateOne()を使用します。まず、ドキュメントを使用してコレクションを作成しましょう-

> db.updateOneDemo.insertOne({"StudentId":1,"StudentFirstName":"Chris"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e06ed3725ddae1f53b621e8")
}
> db.updateOneDemo.insertOne({"StudentId":2,"StudentFirstName":"David"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e06ed3825ddae1f53b621e9")
}
> db.updateOneDemo.insertOne({"StudentId":1,"StudentFirstName":"Mike"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e06ed3825ddae1f53b621ea")
}

以下は、find()メソッドを使用してコレクションからすべてのドキュメントを表示するためのクエリです-

> db.updateOneDemo.find();

これにより、次の出力が生成されます-

{ "_id" : ObjectId("5e06ed3725ddae1f53b621e8"), "StudentId" : 1, "StudentFirstName" : "Chris" }
{ "_id" : ObjectId("5e06ed3825ddae1f53b621e9"), "StudentId" : 2, "StudentFirstName" : "David" }
{ "_id" : ObjectId("5e06ed3825ddae1f53b621ea"), "StudentId" : 1, "StudentFirstName" : "Mike" }

以下は、MongoDBの単一のドキュメントを更新するためのクエリです-

> db.updateOneDemo.updateOne({},{$set:{"StudentFirstName": "Robert"}});
{ "acknowledged" : true, "matchedCount" : 1, "modifiedCount" : 1 }

ドキュメントが更新されたので、find()メソッドを使用してコレクションからすべてのドキュメントをもう一度表示します-

> db.updateOneDemo.find();

これにより、次の出力が生成されます-

{ "_id" : ObjectId("5e06ed3725ddae1f53b621e8"), "StudentId" : 1, "StudentFirstName" : "Robert" }
{ "_id" : ObjectId("5e06ed3825ddae1f53b621e9"), "StudentId" : 2, "StudentFirstName" : "David" }
{ "_id" : ObjectId("5e06ed3825ddae1f53b621ea"), "StudentId" : 1, "StudentFirstName" : "Mike" }

  1. ネストされたドキュメントを更新するためのMongoDBクエリ

    ドキュメントを使用してコレクションを作成しましょう- > db.demo595.insertOne( { "Information": [    { "_id": new ObjectId(), Name:"Chris" },    { _id:new ObjectId(), Name:"Robert" } ] } ); {    "acknowledged" : true,    "inserted

  2. ネストされたドキュメントを更新するMongoDBクエリ?

    ネストされたドキュメントを更新するには、update()を使用し、その中でドット表記を使用します。ドキュメントを使用してコレクションを作成しましょう- > db.demo607.insertOne( ...    { ...       id:1, ...       "Info1" : { ...          "Name" : "Chris", ...