我有这个数据库设计:
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)
};