0

我有这样的桌子

Id Count  Date
1   56    04.10.2012
2   41    05.10.2012
3   56    06.10.2012

我每天只有一条新记录,Count 在白天更新

我需要使用 Linq to Sql 选择最新记录

var result = from q in repositoryManager.Repository.AsQueryable<Detail>()
             group q by q.Id
             into grp
             select grp.OrderByDescending(x => x.Id).FirstOrDefault();

上面的查询不起作用,它返回第一行而不是最后一行。如何解决?

4

1 回答 1

0

你不需要,group by因为你没有聚合任何东西。尝试这个:

var result = repositoryManager.Repository.OrderByDescending(x => x.Id).FirstOrDefault();

您的方法不起作用的原因是因为您正在订购每个组(并且每个组只有一个记录),而不是组本身。当您不需要根据分组依据的列聚合数据时,您首先不需要分组。

于 2013-11-05T23:56:57.687 回答