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

繰り返される年齢値の数を取得するためのドキュメントのGROUPBY配列


ドキュメントのGROUPBY配列には、$groupを使用します。ドキュメントを使用してコレクションを作成しましょう-

>db.demo559.insertOne({details:[{Name:"Chris",Age:21},{Name:"Bob",Age:22},{Name:"Carol", Age:21},{Name:"Sam",Age:21}]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e8f38d954b4472ed3e8e866")
}

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

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

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

{
   "_id" : ObjectId("5e8f38d954b4472ed3e8e866"),
   "details" : [
      {
         "Name" : "Chris",
         "Age" : 21
      },
      {
         "Name" : "Bob",
         "Age" : 22
      },
      {
         "Name" : "Carol",
         "Age" : 21
      },
      {
         "Name" : "Sam",
         "Age" : 21
      }
   ]
}

以下は、ドキュメントの配列でグループ化するクエリです-

> db.demo559.aggregate([
...    {
...       "$unwind": "$details"
...    },
...    {
...       "$group": {
...          "_id": "$details.Age",
...          "Count": { "$sum" : 1 }
...       }
...    },
...    { "$sort": { "_id" : 1 } }
... ])

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

{ "_id" : 21, "Count" : 3 }
{ "_id" : 22, "Count" : 1 }

  1. MySQLを使用して列の繰り返し値の数を取得できますか?

    はい、GROUPBYでORDERBYDESCを使用できます。まずテーブルを作成しましょう- mysql> create table DemoTable    -> (    -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,    -> PostMessage varchar(100)    -> ); Query OK, 0 rows affected (0.69 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します

  2. C#の現在の列挙型の定数の値の配列を取得します

    現在の列挙型の定数の値の配列を取得するには、コードは次のとおりです- 例 using System; public class Demo {    enum Vehicle {Car, Bus, Bike, Airplane}    public static void Main() {       try {          Type type = typeof(int);          string[] str =