使用 LINQ 按字段对数据集进行分组,并根据 where 子句计算另一个数据集的总和



我有这个数据库设计:

StartDate              Number  Branch
2/23/2014 3:00:00 AM   2       1
2/23/2014 3:00:00 AM   3       1

如何使用 LINQ 按startdate分组并对number求和,其中 branch = 1

结果必须能够循环才能获得总和数。

这很简单:

 var result = db.myTable.Where(x => x.Branch == 1)
                        .GroupBy(x => x.StartDate)
                        .Select(g => new 
                        {
                            StartDate = g.Key,
                            Sum = g.Sum(x => x.Number)
                        });

或者在查询语法中:

 var result = 
     from x in db.myTable
     where x.Branch == 1
     group x by x.StartDate into g
     select new 
     {
         StartDate = g.Key
         Sum = g.Sum(x => x.Number)
     };

最新更新