我只是想用Linq来做这个SQL。但是怎么做呢?
Select Id, sum(Count)
from dbo.BThread
group by Id
order by sum(Count) desc我试过了,但失败了:结果只给出了一行。我预计会有比这更多的行。我需要对许多is进行求和计算。
var List = (from tbBThread in context.BThread.Take(10)
group tbBThread by tbBThread.Id into bTmp
orderby bTmp.Sum(x => x.Count)
select new BViewModel
{
Id = bTmp.Key,
Id = bTmp.First().Id,
Count = bTmp.Sum(x => x.Count)
}).ToList();发布于 2017-01-29 04:07:43
Take(10)应该位于查询的末尾。
var List = (from tbBThread in context.BThread
group tbBThread by tbBThread.Id into bTmp
orderby bTmp.Sum(x => x.Count)
select new BViewModel
{
Id = bTmp.Key,
Count = bTmp.Sum(x => x.Count)
}).Take(10).ToList();否则,您只需查看context.BThread的前10个元素,这些元素似乎具有相同的Id,因此属于同一组。
并且(正如Slai在评论中所说的)删除第二个Id = bTmp.First().Id,。
https://stackoverflow.com/questions/41913846
复制相似问题