通过在linq中分组返回最大记录数

时间:2011-11-09 18:32:52

标签: vb.net linq dataset

我对linq很新,我正在尝试针对数据集提出linq查询,该数据集将根据分组记录返回最大计数值。

我到目前为止的linq查询是

  Dim sales = From soldData In SDOSoldDataTable.AsEnumerable
        Where (soldData.Field(Of DateTime)("sold_date") >= lastMonthStartDate _
        And soldData.Field(Of DateTime)("sold_date") <= lastMonthEndDate) _
        Group soldData By username = soldData.Field(Of String)("user_name") _
        Into Group _
        Select _
           username, _
           numSales = Group.Count()

此查询显示上个月的每位销售员(用户名)的销售数量。我现在想要返回上个月销售额最高的销售人员的名字。我猜这是使用Max()对销售的某种类型的聚合查询,但我似乎无法弄明白。

谢谢, 奥马

1 个答案:

答案 0 :(得分:0)

Dim LargestSale = (From sale In sales
                    Order By sale.numSales Descending
                    Select sale).First()