Linq分组后,再对分组后的每组进行内部排序,获取每组中的第一条记录


有一张表trust, 里面每个PersonId对应多条记录,要求按照PersonId 进行分组,然后取出每个Person最近的一条记录。组成一个新的列表

 

Linq to SQL

var result = from n in trust
        group n by n.PersonId into g
        select g.OrderByDescending(t=>t.Date).FirstOrDefault();

Linq to Entity

var result = _context
             .trusts
             .GroupBy(s => s.PersonId)
             .Select(s => s.OrderByDescending(x => x.Date).FirstOrDefault());

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM