如何在订购后从每个组中选择前1名

Riz*_*Riz 4 .net t-sql linq

我有3列/字段作为通用列表的一部分: strID, seq, unit
有一堆strIDs属于同一个单元,每个都有不同的seq.我感兴趣的是具有最小的行中seq每个unit(组的组长).如何使用LINQ查询完成此操作(tsql查询也可以)?

以下是示例数据:

  strID, seq, unit
    aaa, 3, 1
    bbb, 2, 1
    ccc, 4, 1
    ddd, 8, 2
    eee, 15,2
    fff, 7, 2
Run Code Online (Sandbox Code Playgroud)

我的查询会得到以下信息:

leaderID, unit
bbb, 1
fff, 2
Run Code Online (Sandbox Code Playgroud)

Amy*_*y B 5

source
  .GroupBy(row => row.unit)
  .Select(g => g.OrderBy(row => row.seq).First());
Run Code Online (Sandbox Code Playgroud)