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

MongoDBと同時にプルして追加して設定しますか?出来ますか?


はい、$addToSetおよび$pull演算子を使用して、pullとaddを同時に使用できます。まず、ドキュメントを使用してコレクションを作成しましょう

> db.pullAndAddToSetDemo.insertOne({StudentScores : [78, 89, 90]}
... );
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c9a797e15e86fd1496b38af")
}

以下は、find()メソッドを使用してコレクションからすべてのドキュメントを表示するためのクエリです

> db.pullAndAddToSetDemo.find().pretty();

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

{
   "_id" : ObjectId("5c9a797e15e86fd1496b38af"),
   "StudentScores" : [
      78,
      89,
      90
   ]
}

以下は、MongoDBで同時にpullとaddtosetを実行するためのクエリです

> var addAndPull = db.pullAndAddToSetDemo.initializeOrderedBulkOp();
> addAndPull.find({ "StudentScores": 89 }).updateOne({ "$addToSet": { "StudentScores": 99 } });
> addAndPull.find({ "StudentScores": 90 }).updateOne({ "$pull": { "StudentScores": 90 } });
> addAndPull.execute();

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

BulkWriteResult({
   "writeErrors" : [ ],
   "writeConcernErrors" : [ ],
   "nInserted" : 0,
   "nUpserted" : 0,
   "nMatched" : 2,
   "nModified" : 2,
   "nRemoved" : 0,
   "upserted" : [ ]
})

コレクションからもう一度ドキュメントを確認してみましょう。以下はクエリです

> db.pullAndAddToSetDemo.find().pretty();

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

{
   "_id" : ObjectId("5c9a797e15e86fd1496b38af"),
   "StudentScores" : [
      78,
      89,
      99
   ]
}

  1. C++で指定された要素のセットを持つ長方形と正方形の可能な数

    この問題では、n本の棒の長さを示すN個の整数の配列が与えられます。私たちの仕事は、与えられた長さの棒から作成できる長方形と正方形の数を印刷することです。 問題を理解するために例を見てみましょう 入力 −配列={5、5、7、7、1、4} 出力 − 1 説明 −辺が5 577の長方形。 この問題を解決するには、長方形や正方形が可能かどうかを確認する必要があります。 ここで、正方形または長方形を作成するには、同じ長さの2つのスティックが必要です。長方形の場合は2つ、正方形の場合は4つです。ここで、配列で、同じ長さのスティックのペアをチェックする必要があります。この検索を簡単にするために、配

  2. Redis SADD –セットに要素を作成して追加する方法

    このチュートリアルでは、コマンド– SADD を使用して、キーに格納されている設定値に要素を作成および追加する方法について学習します。 redis-cliで。キーがデータストアに存在する場合、指定されたすべての要素がセットに追加されます(すでに存在する要素は無視されます)。そうでない場合は、セットに追加する前に新しいセットが作成されます。 redis SADDコマンドの構文は次のとおりです:- 構文:- redis host:post> SADD <key name> <value 1> [ <value 2> ] 出力:- - (integ