我有以下信息LINQ查询问题
日期,名称列表,以及一些统计
名称可以重复,但他们不一定。
所以比如我可能有
5,今天, “约翰”
4,今天, “金”
3,今天, “彼得”
2,昨日, “金”
1,昨天,“添”
我想要一个查询,检索每个用户的最新记录。在我的例子中,这将是记录5,4和1.
我是否必须将每条记录与整个数据库进行匹配才能找出?
什么是最好的表现查询来实现这一目标?
我有以下信息LINQ查询问题
日期,名称列表,以及一些统计
名称可以重复,但他们不一定。
所以比如我可能有
5,今天, “约翰”
4,今天, “金”
3,今天, “彼得”
2,昨日, “金”
1,昨天,“添”
我想要一个查询,检索每个用户的最新记录。在我的例子中,这将是记录5,4和1.
我是否必须将每条记录与整个数据库进行匹配才能找出?
什么是最好的表现查询来实现这一目标?
也许这样的事情可以工作?
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();
这里就是我想:
from u in context.Users
group u by u.UserID into grouped
select grouped.OrderByDescending(g => g.Date).First()
您的意思是古老的,而不是最新的?为什么你想要2而不是4如果最新意味着最新?在SQL中,你问的看起来像用户名分组,并有Id =分钟... –
哎呀,我在上次编辑切换列表上的数字,忘了改变这一点。 – bevacqua
你只有在LINQ或SQL中有问题,你能告诉我们哪个SQL查询给你预期的结果吗? –