MongoDB – $group と $avg を使用した例

MongoDB

MongoDB Exercises $group 演算子

使用例と説明

仮定して、私たちには sales という名前のコレクションがあり、売上記録が含まれており、それぞれの記録には product(製品名)、category(製品カテゴリ)、amount(売上額)のフィールドがあります。私たちは各製品カテゴリの平均売上額を計算したいと考えています。

以下は $group$avg を使用した例です:

[
  { "_id": 1, "product": "Product A", "category": "Category 1", "amount": 100 },
  { "_id": 2, "product": "Product B", "category": "Category 1", "amount": 150 },
  { "_id": 3, "product": "Product C", "category": "Category 2", "amount": 200 },
  { "_id": 4, "product": "Product D", "category": "Category 2", "amount": 250 }
]

以下のように聚合パイプラインを使用します:

db.sales.aggregate([
  {
    $group: {
      _id: "$category",   // カテゴリでグループ化
      avgAmount: { $avg: "$amount" }  // 平均売上額を計算
    }
  }
])

この例では、$group ステージを使用して売上記録を category フィールドでグループ化します。そして、$avg 演算子を使用して各カテゴリの平均売上額を計算し、結果を avgAmount フィールドとして返します。

実行された結果は次のようになります:

[
  { "_id": "Category 1", "avgAmount": 125 },
  { "_id": "Category 2", "avgAmount": 225 }
]

この結果は、それぞれの製品カテゴリの平均売上額を示しています。

$group演算子について…

$group と $sumを組み合わせた例

コメント

タイトルとURLをコピーしました