動くコード図鑑技術記事現場の渡り方キャリア論すべての記事About
C#

パターン2: GroupBy +集計(Sum / Count / Average)

出典: C# DataTable を LINQ でフィルタ・GroupBy・分割する3パターンパターン2: GroupBy +集計(Sum / Count / Average)

パターン2: GroupBy +集計(Sum / Count / Average) (csharp)#4012f8c5d3ba
//カテゴリ別の件数と合計金額
var summary = dt.AsEnumerable()
    .GroupBy(r => r.Field<string>("category"))
    .Select(g => new
    {
        Category = g.Key,
        Count = g.Count(),
        TotalPrice = g.Sum(r => r.Field<int>("price")),
        AvgPrice = g.Average(r => r.Field<int>("price"))
    })
    .OrderByDescending(x => x.TotalPrice)
    .ToList();
 
foreach (var s in summary)
{
    Console.WriteLine($"{s.Category}: {s.Count}件/合計{s.TotalPrice} /平均{s.AvgPrice:F0}");
}
▸ 実行ボタンで結果を表示
  • id: #4012f8c5d3ba
  • lines: 17
  • extracted: 2026-06-10
  • captured: 2026-06-04

Source収録記事

この snippet は記事の「パターン2: GroupBy +集計(Sum / Count / Average)」セクションに登場する。コードの前後の文脈・ハマりどころの解説は記事本文で。

同じ記事から

10
図鑑トップ