MongoDBで一致したフィールドに応じた条件付き更新
条件付き更新の場合は、update()を使用し、$setを使用して新しい値を設定します。ドキュメントを使用してコレクションを作成しましょう-
> db.demo150.insertOne({"StudentId":101,"StudentName":"Chris","StudentMarks":35}); { "acknowledged" : true, "insertedId" : ObjectId("5e350dcdfdf09dd6d08539d3") } > db.demo150.insertOne({"StudentId":102,"StudentName":"Chris","StudentMarks":55}); { "acknowledged" : true, "insertedId" : ObjectId("5e350dcefdf09dd6d08539d4") } > db.demo150.insertOne({"StudentId":103,"StudentName":"David","StudentMarks":34}); { "acknowledged" : true, "insertedId" : ObjectId("5e350dcffdf09dd6d08539d5") } > db.demo150.insertOne({"StudentId":104,"StudentName":"Chris","StudentMarks":38}); { "acknowledged" : true, "insertedId" : ObjectId("5e350dd0fdf09dd6d08539d6") }
find()メソッドを使用してコレクションからすべてのドキュメントを表示する-
> db.demo150.find();
これにより、次の出力が生成されます-
{ "_id" : ObjectId("5e350dcdfdf09dd6d08539d3"), "StudentId" : 101, "StudentName" : "Chris", "StudentMarks" : 35 } { "_id" : ObjectId("5e350dcefdf09dd6d08539d4"), "StudentId" : 102, "StudentName" : "Chris", "StudentMarks" : 55 } { "_id" : ObjectId("5e350dcffdf09dd6d08539d5"), "StudentId" : 103, "StudentName" : "David", "StudentMarks" : 34 } { "_id" : ObjectId("5e350dd0fdf09dd6d08539d6"), "StudentId" : 104, "StudentName" : "Chris", "StudentMarks" : 38 }
以下は、一致したフィールドに応じた条件付き更新のクエリです-
> db.demo150.update({"StudentId":103},{$set:{"StudentMarks":97}}); WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
find()メソッドを使用してコレクションからすべてのドキュメントを表示する-
> db.demo150.find();
これにより、次の出力が生成されます-
{ "_id" : ObjectId("5e350dcdfdf09dd6d08539d3"), "StudentId" : 101, "StudentName" : "Chris", "StudentMarks" : 35 } { "_id" : ObjectId("5e350dcefdf09dd6d08539d4"), "StudentId" : 102, "StudentName" : "Chris", "StudentMarks" : 55 } { "_id" : ObjectId("5e350dcffdf09dd6d08539d5"), "StudentId" : 103, "StudentName" : "David", "StudentMarks" : 97 } { "_id" : ObjectId("5e350dd0fdf09dd6d08539d6"), "StudentId" : 104, "StudentName" : "Chris", "StudentMarks" : 38 }
-
MongoDBの特定の文字列でフィールドのすべての値を更新しますか?
すべての値を更新するには、update()をmulti:trueとともに使用します。ドキュメントを使用してコレクションを作成しましょう- > db.demo720.insertOne({"SubjectName":"MySQL"}); { "acknowledged" : true, "insertedId" : ObjectId("5eaae7ca43417811278f5883") } > db.demo720.insertOn
-
コレクション内のドキュメントの各フィールドを数式で更新するMongoDBクエリ?
コレクション内のドキュメントの各フィールドを数式で更新するには、MongoDB update()を使用します。ドキュメントを使用してコレクションを作成しましょう- > db.demo749.insertOne({"details":[{"id":1,a:10},{"id":2,a:5},{"id":3,a:20}]}); { "acknowledged" : true, "insertedId" : ObjectId(