c# – 按列排序的Linq查询摘要
发布时间:2020-12-16 01:54:21 所属栏目:百科 来源:网络整理
导读:场景是这样的 public class Test { public string name; public int val1; public int val1;}name |val 1 |val 2|'aa' | 10 | 4 | 'aa' | 30 | 5 | 'bb' | 14 | 4 |'bb' | 16 | 6 | 'cc' | 5 | 5 |'cc' | 2 | 1 |'cc' | 1 | 1 | 什么是按名称分组的最佳方式,
场景是这样的
public class Test { public string name; public int val1; public int val1; } name |val 1 |val 2| 'aa' | 10 | 4 | 'aa' | 30 | 5 | 'bb' | 14 | 4 | 'bb' | 16 | 6 | 'cc' | 5 | 5 | 'cc' | 2 | 1 | 'cc' | 1 | 1 | 什么是按名称分组的最佳方式,并为每个名称获取汇总val_1和val_2 如 name |val 1 |val 2| 'aa' | 40 | 9 | 'bb' | 30 | 10 | 'cc' | 8 | 7 | 解决方法
试试这个
var results = from t in db.Tests group t by t.name into g orderby g.Key select new { name = g.Key,val_1 = g.Sum(x => x.val_1),val_2 = g.Sum(x => x.val_2) }; 或者如果您更喜欢流利的语法: var results = db.Tests.GroupBy(t => t.name) .OrderBy(g => g.Key) .Select(g => new { name = g.Key,val_2 = g.Sum(x => x.val_2) }); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |