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

MongoDBの配列内の要素を更新しますか?


配列内の要素を更新するには、MongoDBで$setを使用します。ドキュメントを使用してコレクションを作成しましょう-

> db.demo494.insertOne(
... {
...
...    "CollegeDetails" : [
...       {
...          "CollegeName" : "MIT",
...          "Fees" : 80000
...       },
...       {
...          "CollegeName" : "SU",
...          "Fees" : 90000
...       }
...    ]
... }
... )
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e84a5c1b0f3fa88e22790c9")
}

find()メソッドを使用してコレクションからすべてのドキュメントを表示する-

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

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

{
   "_id" : ObjectId("5e84a5c1b0f3fa88e22790c9"),
   "CollegeDetails" : [
      {
         "CollegeName" : "MIT",
         "Fees" : 80000
      },
      {
         "CollegeName" : "SU",
         "Fees" : 90000
      }
   ]
}

以下は、MongoDBの配列内の要素を更新するためのクエリです-

> db.demo494.update(
...
... {
...    "CollegeDetails.CollegeName": "MIT"
... },
...
... {
...    $set:
...       {
...          "CollegeDetails.$.Fees" : 100000
...       }
...    }
... );
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

find()メソッドを使用してコレクションからすべてのドキュメントを表示する-

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

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

{
   "_id" : ObjectId("5e84a5c1b0f3fa88e22790c9"),
   "CollegeDetails" : [
      {
         "CollegeName" : "MIT",
         "Fees" : 100000
      },
      {
         "CollegeName" : "SU",
         "Fees" : 90000
      }
   ]
}

  1. インデックスNの配列オブジェクトを更新するMongoDBクエリ?

    MongoDBのupdate()を使用して、配列オブジェクトを更新します。ドット表記の使用も必要です。ドキュメントを使用してコレクションを作成しましょう- > db.demo489.insertOne( ... { ... ... ...    details : [{ ...       id : 101, ...       "Info1" : { ...          "StudentName" : "

  2. 異なる要素をMongoDBの別の配列に移動しますか?

    forEachを使用してさまざまな要素を確認し、いくつかの条件とともにsave()を使用します。ドキュメントを使用してコレクションを作成しましょう- > db.demo646.insertOne( ...    { ... ...       "Information": [ ...          { id: 100, Name:"Chris" }, ...          { id: 100,