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

MongoDBで子オブジェクトを更新するにはどうすればよいですか?


子オブジェクトを更新するには、$set演算子を使用します。まず、ドキュメントを使用してコレクションを作成しましょう-

>db.updateChildObjectsDemo.insertOne({"StudentName":"Chris","StudentOtherDetails":{"StudentSubject":"MongoDB","StudentCountryName":"AUS"}});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ce964e078f00858fb12e91f")
}

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

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

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

{
   "_id" : ObjectId("5ce964e078f00858fb12e91f"),
   "StudentName" : "Chris",
   "StudentOtherDetails" : {
      "StudentSubject" : "MongoDB",
      "StudentCountryName" : "AUS"
   }
}

以下は、MongoDBの子オブジェクトを更新するためのクエリです-

> db.updateChildObjectsDemo.update({"StudentName" : "Chris"},{$set:{"StudentOtherDetails.StudentCountryName":"UK"}});
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

ドキュメントをもう一度確認しましょう-

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

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

{
   "_id" : ObjectId("5ce964e078f00858fb12e91f"),
   "StudentName" : "Chris",
   "StudentOtherDetails" : {
      "StudentSubject" : "MongoDB",
      "StudentCountryName" : "UK"
   }
}

  1. MongoDBでオブジェクトの配列を検索できますか?

    はい、オブジェクトの配列を検索するには、MongoDBaggregate()で$unwindを使用します。一致させるには、$matchを使用します。ドキュメントを使用してコレクションを作成しましょう- > db.demo623.insertOne( ...    { ...       _id:1, ...       details:[ ...          { ...            

  2. MongoDB-ドキュメントのフィールドにアクセスするにはどうすればよいですか?

    ドキュメントのフィールドにアクセスするには、find()を使用するだけです。ドキュメントを使用してコレクションを作成しましょう- > db.demo565.insertOne( ... { ...    id:101, ...    Name:"David", ...    "CountryName":"US" ... } ... ); {    "acknowledged" : true,    "