select description, min(date), max(date), sum(value1), sum(value2) from table
where description = 'Axxx' and filter = 'L'
group by description
如何使用Linq / C#执行此查询?
答案 0 :(得分:10)
未经测试,但以下情况应该有效:
table
.Where(x=>x.description=="Axxx" && x.filter=="L")
.GroupBy(x=>x.description)
.Select(x=>new {
description=x.Key,
mindate=x.Min(z=>z.date),
maxdate=x.Max(z=>z.date),
sumvalue1=x.Sum(z=>z.value1),
sumvalue2=x.Sum(z=>z.value2)
});
答案 1 :(得分:0)
那应该有用
var q = from s in db.table
where description = 'Axxx' and filter = 'L'
group s by s.description into g
select new {YourDescription = g.description, MaxDate = g.Max(s => s.date) }
这个答案也许有帮助.. here
答案 2 :(得分:0)
这样的事情应该有效。未经测试
var q = from b in table
group b by b.Owner into g
where description = 'Axxx'
select new
{
description = g.description ,
date = g.min(),
date = g.max(),
value1= g.Sum(item => item.value1),
value2= g.Sum(item => item.value2),
};