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

MongoDBのキーと値のペアのリストから一連のドキュメントを更新する


ドキュメントを使用してコレクションを作成しましょう-

> db.demo227.insertOne({"_id":"101","Name":"Chris"});
{ "acknowledged" : true, "insertedId" : "101" }
> db.demo227.insertOne({"_id":"102","Name":"Bob"});
{ "acknowledged" : true, "insertedId" : "102" }

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

> db.demo227.find();

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

{ "_id" : "101", "Name" : "Chris" }
{ "_id" : "102", "Name" : "Bob" }

以下は、キーと値のペアのリストからドキュメントのセットを更新するためのクエリです-

> var bulkUpdateValue = [{"_id": "101", "Name": "Robert"},
...   {"_id": "102", "Name": "Sam"}
...];
> var bulkUpdate = db.demo227.initializeUnorderedBulkOp();
> var updateCounter= undefined;
> for (var i = 0; i < bulkUpdateValue.length; i++){
...   updateCounter = bulkUpdateValue[i];
...   bulkUpdate.find( {_id: updateCounter._id} ).update( {$set: {Name: updateCounter.Name}} );
... }
> bulkUpdate.execute();
BulkWriteResult({
   "writeErrors" : [ ],
   "writeConcernErrors" : [ ],
   "nInserted" : 0,
   "nUpserted" : 0,
   "nMatched" : 2,
   "nModified" : 2,
   "nRemoved" : 0,
   "upserted" : [ ]
})

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

> db.demo227.find();

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

{ "_id" : "101", "Name" : "Robert" }
{ "_id" : "102", "Name" : "Sam" }

  1. MongoDBのドキュメントから配列値を削除するにはどうすればよいですか?

    配列値を削除するには、MongoDBで$pullを使用します。 $ pull演算子は、既存の配列から、指定された条件に一致する1つまたは複数の値のすべてのインスタンスを削除します。 まず、ドキュメントを使用してコレクションを作成しましょう- > db.demo535.insertOne( ... { ... ...    "studentId" : "101", ...    "studentName" : "Chris", ...    &quo

  2. MongoDBシェルを使用してドキュメントから特定の値を持つアイテムを取得するにはどうすればよいですか?

    特定の値のアイテムを取得するには、find()を使用するだけです。ドキュメントを使用してコレクションを作成しましょう- > db.demo563.insertOne({"Name":"Chris","Age":21,"isMarried":true}){    "acknowledged" : true, "insertedId" : ObjectId("5e8f546c54b4472ed3e8e878") } > db.d