日期:2014-05-20  浏览次数:20881 次

linq多表分组查询
a表有数据bid与b表id相关,要按照a的字段name分组,b的字段time排序,只查询b全部字段,要求只取每个组的time最大的数据

------解决方案--------------------
C# code
var query= from x in db.a
           join y in db.b
           on x.bid equals b.id
           group x by x.name into g
           select g.OrderByDescending(z=z.time).First();

------解决方案--------------------
探讨

引用:
a表有数据bid与b表id相关,要按照a的字段name分组,b的字段time排序,只查询b全部字段,要求只取每个组的time最大的数据

这个time字段是b表的,这是关键的所在。您看看怎么实现,这里我要返回的是a表。说白了就是按照a的time 排序但是要按照b的name来分组,而且只要最大值