首页 新闻 会员 周边

如何使用C# Linq或者Lambed表达式实现如下图所示结果

0
[已解决问题] 解决于 2015-01-22 10:37

图中的表刚开始的数据是查询结果集1里的数据,

然后我进行查询筛选后,结果为查询结果集2的数据.大家可以看SQL语句.

然后针对查询出来的结果集2

我需要再根据结果集2查询一下,最终结果,

我希望可以根据StatisLlane得出三条数据。如果用SQL语句表示,如下。

select StatisLlane ,VehicleClass,(Sum(Avspeed*Volume)/Sum(Volume)) as SumAvspeed,Sum(Volume) as SumVolume,max(Occupancy) as SumOccupancy from RadarDataTable Group by VehicleClass ,StatisLlane order by StatisLlane

 

 

以上的SQL语句我需要转换成C#代码来实现,希望各位可以指点 谢谢!

何小宝的主页 何小宝 | 初学一级 | 园豆:19
提问于:2014-12-16 13:25
< >
分享
最佳答案
0

第一,你是完全不懂LINQ还是不想懂,想懂的话,起码的一些写法自己要熟悉。

第二,LINQ本身是支持多次写,最后再编译的。按照你的逻辑只要把他分为

var query1= from c in RadarDataTable 

                     where condition

 

var query2= from c in query1

      group s by new {s.empid, s.weekending} into g

      select new { g.Key.empid, g.Key.weekending, g.Sum(s => s.hours) };

 

贴个博文给你参考下吧。

LINQ group by sum

奖励园豆:5
爱编程的大叔 | 高人七级 |园豆:30839 | 2014-12-16 14:25
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册