我有一个包含以下信息的列表
日期,姓名和一些统计数据
名称可以重复,但不一定。
所以例如我可以
5,今天,“约翰” 4,今天,“金” 3,今天,“彼得”我想要一个查询来检索每个用户的最新记录。在我的例子中,这将是记录5,4和1。
我是否必须将每条记录与整个数据库相匹配才能找到?
实现这一目标的最佳表现是什么?
答案 0 :(得分:3)
也许这样的事情可以奏效?
var linq = people.GroupBy(a => a.Name).Select(a => a.OrderBy(a => a.Date).Last());
更长的版本:
var linq = from person in people
group person by person.Name into grouped
select grouped.OrderBy(a => a.Date).Last();
答案 1 :(得分:0)
这就是我的想法:
from u in context.Users
group u by u.UserID into grouped
select grouped.OrderByDescending(g => g.Date).First()