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

ステータスを設定するMongoDBGroupBy


このために、MongoDBでaggregate()を使用できます。ドキュメントを使用してコレクションを作成しましょう-

> db.demo149.insertOne({"Status":40});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e350386fdf09dd6d08539c4")
}
> db.demo149.insertOne({"Status":40});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e350388fdf09dd6d08539c5")
}
> db.demo149.insertOne({"Status":50});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e35038afdf09dd6d08539c6")
}

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

> db.demo149.find();

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

{ "_id" : ObjectId("5e350386fdf09dd6d08539c4"), "Status" : 40 }
{ "_id" : ObjectId("5e350388fdf09dd6d08539c5"), "Status" : 40 }
{ "_id" : ObjectId("5e35038afdf09dd6d08539c6"), "Status" : 50 }

これがMongoDBグループへの-

によるクエリです。
> db.demo149.aggregate([
...    {
...       "$group": {
...          "_id": null,
...          "done": {
...             "$push": {
...                "$cond": [
...                   { "$eq": [ "$Status", 40 ] },
...                   { "_id": "$_id", "Status": "$Status" },
...                   false
...                ]
...             }
...          },
...          "notdone": {
...             "$push": {
...                "$cond": [
...                   { "$eq": [ "$Status", 50 ] },
...                   { "_id": "$_id", "Status": "$Status" },
...                   false
...                ]
...             }
...          }
...       }
...    },
... {
...    "$project": {
...       "_id": 0,
...       "done": {
...          "$setDifference": [ "$done", [false] ]
...       },
...       "notdone": {
...          "$setDifference": [ "$notdone", [false] ]
...          }
...       }
...    }
... ]);

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

{
   "done" : [
      { "_id" : ObjectId("5e350386fdf09dd6d08539c4"), "Status" : 40 },
      { "_id" : ObjectId("5e350388fdf09dd6d08539c5"), "Status" : 40 } ], "notdone" : [
      { "_id" : ObjectId("5e35038afdf09dd6d08539c6"), "Status" : 50 }
   ]
}

  1. MongoDBでネストされた配列のフィルタリング条件を設定します

    フィルタリング条件を設定するには、MongoDBaggregate()で$filterと$condを使用します。 $ filterは、指定された条件に基づいて返す配列のサブセットを選択します。ドキュメントを使用してコレクションを作成しましょう- > db.demo725.insertOne( ...    { ... ...       "details": { ... ...          "userMessages": [ ...  

  2. Microsoft Teams でステータス メッセージを設定する方法

    Microsoft Teams のステータス メッセージを設定することは、同僚に自分がどこにいて何をしているのかを知らせる良い方法です。ステータス メッセージを定期的に更新することで、「何をしているの?」というメッセージが延々と続くのを避けることができます。また、デスクから離れているときに創造性を発揮する機会も提供されます。 ステータス メッセージの設定は簡単です。 Microsoft Teams Web クライアントまたはデスクトップ アプリを使用して、右上にある自分のプロフィール写真をクリックします。次に、[ステータス メッセージの設定] メニュー オプションをクリックします。