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

特定のIDに一致するすべてのドキュメントを更新するMongoDBクエリ


updateMany()関数を使用して、フィルター条件に一致するすべてのドキュメントを更新します。ドキュメントを使用してコレクションを作成しましょう-

> db.demo476.insertOne({_id:1,"Name":"Chris"});
{ "acknowledged" : true, "insertedId" : 1 }
> db.demo476.insertOne({_id:2,"Name":"David"});
{ "acknowledged" : true, "insertedId" : 2 }
> db.demo476.insertOne({_id:3,"Name":"Bob"});
{ "acknowledged" : true, "insertedId" : 3 }
> db.demo476.insertOne({_id:4,"Name":"Carol"});
{ "acknowledged" : true, "insertedId" : 4 }

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

> db.demo476.find();

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

{ "_id" : 1, "Name" : "Chris" }
{ "_id" : 2, "Name" : "David" }
{ "_id" : 3, "Name" : "Bob" }
{ "_id" : 4, "Name" : "Carol" }

以下は、特定のIDに一致するすべてのドキュメントを更新するためのクエリです-

> db.demo476.updateMany({_id:{$in:[1,3]}},{$set:{Name:"Robert"}});
{ "acknowledged" : true, "matchedCount" : 2, "modifiedCount" : 2 }

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

> db.demo476.find();

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

{ "_id" : 1, "Name" : "Robert" }
{ "_id" : 2, "Name" : "David" }
{ "_id" : 3, "Name" : "Robert" }
{ "_id" : 4, "Name" : "Carol" }

  1. コレクション内のドキュメントの各フィールドを数式で更新するMongoDBクエリ?

    コレクション内のドキュメントの各フィールドを数式で更新するには、MongoDB update()を使用します。ドキュメントを使用してコレクションを作成しましょう- > db.demo749.insertOne({"details":[{"id":1,a:10},{"id":2,a:5},{"id":3,a:20}]}); {    "acknowledged" : true,    "insertedId" : ObjectId(

  2. MongoDBで1つのクエリで多くのドキュメントを更新するにはどうすればよいですか?

    1つのクエリで多くのドキュメントを更新するには、MongoDBでbulkWrite()を使用します。ドキュメントを使用してコレクションを作成しましょう- > db.demo760.insertOne({id:1,details:{Value1:100,Value2:50}}); {    "acknowledged" : true,    "insertedId" : ObjectId("5eb0309f5637cd592b2a4aee") } > db.demo760.insert