MongoDBのサブオブジェクトを更新していますか?
これには$set演算子を使用できます。まず、ドキュメントを使用してコレクションを作成しましょう-
> db.updateSubObjectDemo.insertOne( ... { ... ... "ClientId" : 100, ... "ClientDetails" : { ... "ClientFirstName" : "Adam" ... } ... } ... ); { "acknowledged" : true, "insertedId" : ObjectId("5cd31434b64f4b851c3a13e9") }
以下は、find()メソッドを使用してコレクションからすべてのドキュメントを表示するためのクエリです-
> db.updateSubObjectDemo.find().pretty();
これにより、次の出力が生成されます-
{ "_id" : ObjectId("5cd31434b64f4b851c3a13e9"), "ClientId" : 100, "ClientDetails" : { "ClientFirstName" : "Adam" } }
以下は、MongoDBのサブオブジェクトを更新するためのクエリです。ここでは、ClientLastName-
を設定しました> db.updateSubObjectDemo.update({ClientId : 100}, { $set : { "ClientDetails.ClientLastName" : "Smith"}}); WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
上記のコレクションのすべてのドキュメントを表示しましょう-
> db.updateSubObjectDemo.find().pretty();
これにより、次の出力が生成されます-
{ "_id" : ObjectId("5cd31434b64f4b851c3a13e9"), "ClientId" : 100, "ClientDetails" : { "ClientFirstName" : "Adam", "ClientLastName" : "Smith" } }
-
MongoDBドキュメントの更新中にカスタム変数を使用するにはどうすればよいですか?
更新するには、update()を使用します。以下は、サンプルのカスタム変数を作成して使用するための構文です- var anyVariableName=yourValue; db.yourCollectionName.update({filter},{$set:{yourFieldName:yourVariableName}}); ドキュメントを使用してコレクションを作成しましょう- > db.demo600.insertOne({id:1,Name:"Robert"});{ "acknowledged" : true,
-
_idのMongoDBコレクションを更新していますか?
_idを更新するには、MongoDBで$setを使用します。ドキュメントを使用してコレクションを作成しましょう- db.demo741.insertOne({SubjectName:"MySQL"}); { "acknowledged" : true, "insertedId" : ObjectId("5ead718657bb72a10bcf0672") } > db.demo741.insertOne({SubjectName:"C"}