LINQ to SQL分组使用

我有一个看起来像这样的表:

Id GroupId Value

它大约有100行

如何返回前10行的值,但没有重复的GroupId?

解决方法:

应该这样做:

var results = table
    .GroupBy(x => x.GroupId)
    .Select(x => new { Row = x, Value = x.Max(y => y.Value) })
    .OrderByDescending(x => x.Value)
    .Select(x => x.Row)
    .Take(10);

编辑:修改为返回整个对象.

上一篇:Take-home Final Project


下一篇:C#中的Skip()和Take()