linq语句中多个记录合成一条记录

使用LINQ合并多个记录为一条并进行排名
本文介绍了如何在.NET环境中利用LINQ语句处理数据,特别是在面对需要将多个记录合并成一条记录并计算总分的场景。通过示例展示了如何从数据库中获取特定时间段内某个人的加分记录,然后对这些记录进行求和,以及如何通过LINQ的GroupBy方法将多条记录整合。最后,讨论了如何根据总分进行排名,确保相同分数的记录能正确分配排名。

         小菜先说一下环境应用,在福分系统中每天都有加分的记录,并且每次加分的分值是不同的。现在有一个这样的需求就是按照一定的时间段,求出某个人的所加的分值。并且按照分值排名。

         该怎么着手呢?先求出这段时间的所有的记录,这个比较简单。难的地方在,这怎么通过人名(id),得到特定人的几条记录,然后得到总分,并且是不定向的几个人。

         想不到linq语句很强大,它封装了这样的方法。来看一下!

                listt = (from test in listTest   //在这里进行一些改正 listStartTimeFin
                        
                         group test by test.ClassmateID into tt
                         select new ClassifiySumModel()
                         {
                             StartDate  = startTime,
                             EndDate = endTime,
                             GradeName = tt.Select(x => x.GradeName).First(),//原来是userGrade

      
评论 24
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值