学生DavidのMongoDBでマーク値を使用してドキュメントを更新する方法
forEach()とトラバースを使用して、学生名を検索します。Davidは同じ学生の新しいマークを更新します。ドキュメントを使用してコレクションを作成しましょう-
> db.demo634.insertOne({Name:"Chris","Marks":76}); { "acknowledged" : true, "insertedId" : ObjectId("5e9c0ea66c954c74be91e6c9") } > db.demo634.insertOne({Name:"Bob","Marks":67}); { "acknowledged" : true, "insertedId" : ObjectId("5e9c0ead6c954c74be91e6ca") } > db.demo634.insertOne({Name:"David","Marks":37}); { "acknowledged" : true, "insertedId" : ObjectId("5e9c0eb76c954c74be91e6cb") }
find()メソッドを使用してコレクションからすべてのドキュメントを表示する-
> db.demo634.find();
これにより、次の出力が生成されます-
{ "_id" : ObjectId("5e9c0ea66c954c74be91e6c9"), "Name" : "Chris", "Marks" : 76 } { "_id" : ObjectId("5e9c0ead6c954c74be91e6ca"), "Name" : "Bob", "Marks" : 67 } { "_id" : ObjectId("5e9c0eb76c954c74be91e6cb"), "Name" : "David", "Marks" : 37 }
以下は、学生のDavidのマーク値でドキュメントを更新するためのクエリです-
> db.demo634.find({Name:"David"}).forEach(function(d){ db.demo634.update({_id:d._id},{$set:{Marks:98}}); })
find()メソッドを使用してコレクションからすべてのドキュメントを表示する-
> db.demo634.find();
これにより、次の出力が生成されます-
{ "_id" : ObjectId("5e9c0ea66c954c74be91e6c9"), "Name" : "Chris", "Marks" : 76 } { "_id" : ObjectId("5e9c0ead6c954c74be91e6ca"), "Name" : "Bob", "Marks" : 67 } { "_id" : ObjectId("5e9c0eb76c954c74be91e6cb"), "Name" : "David", "Marks" : 98 }
-
MongoDBでforループを使用して値をプッシュする方法は?
値をプッシュするには、forループとともにsave()を使用します。ドキュメントを使用してコレクションを作成しましょう- > for(var v=1; v<7; v++) { ... db.demo739.save({Name:"Chris",SubjectName:"MongoDB"}); ... } WriteResult({ "nInserted" : 1 }) find()メソッドを使用してコレクションからすべてのドキュメントを表示する- > db.demo739.find(); これにより、次の出力が生
-
MongoDBで1つのクエリで多くのドキュメントを更新するにはどうすればよいですか?
1つのクエリで多くのドキュメントを更新するには、MongoDBでbulkWrite()を使用します。ドキュメントを使用してコレクションを作成しましょう- > db.demo760.insertOne({id:1,details:{Value1:100,Value2:50}}); { "acknowledged" : true, "insertedId" : ObjectId("5eb0309f5637cd592b2a4aee") } > db.demo760.insert