专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > LINQ

百分 Linq查询 DataTable 分组 多列求和

发布时间:2011-06-24 21:55:12 文章来源:www.iduyao.cn 采编人员:星星草
百分求助 Linq查询 DataTable 分组 多列求和
DataTable例子如下:(当然数据远不止这些)

  Name a b c d e f g
  卡卡 2 1 4 5 6 7 9 
  梅西 2 4 1 5 6 7 9
  保罗 7 6 3 5 6 7 9
  卡卡 9 3 5 5 6 7 9
  梅西 6 7 4 5 6 7 9
  保罗 8 9 8 5 6 7 9  

我现在想用 linq 实现 按 Name分组 在把后面的列值求和 
实现效果如下:

  Name a b c d e f g 当然 b c d e f g 列均需要求和
  卡卡 a列Name为卡卡的和 1 4 5 6 7 9 
  梅西 a列Name为卡卡的和 4 1 5 6 7 9
  保罗 a列Name为卡卡的和 6 3 5 6 7 9

希望问题已经表速明白,麻烦大侠给解答下,谢谢

------解决方案--------------------
C# code
var Query=from t in table
    group t by t.name
    select new{name=g.key,a=g.sum(v=>v.a),b=g.sum(v=>v.b),.....}

------解决方案--------------------
var re = from t in datatable
group t by new {t.a,
t.b,
t.c,
t.d} into g
select new {g.key,
e=g.Sum(k => k.a)};

------解决方案--------------------
var table = from t in _dt3.AsEnumerable()
group t by t.Field<string>("Name0") into s
select new
{
Name0 = s.Key,
Name1 = s.Sum(v => v.Field<string>("Name1")),
Name2 = s.Sum(v => v.Field<string>("Name2")),
Name3 = s.Sum(v => v.Field<string>("Name3")),
Name4 = s.Sum(v => v.Field<string>("Name4")),
Name5 = s.Sum(v => v.Field<string>("Name5")),
Name6 = s.Sum(v => v.Field<string>("Name6")),
Name7 = s.Sum(v => v.Field<string>("Name7"))
};
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: