首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

linq 分组求和解决思路

2012-12-14 
linq 分组求和 var qs SNP.GroupBy(x new { x.customer_name, x.sales, x.customer_code}) 我要分组

linq 分组求和
 var qs = SNP.GroupBy(x => new { x.customer_name, x.sales, x.customer_code}) ;
我要分组并求trans_fee的和,我怎么再把sum(trans_fee)加上去,高人指点
[最优解释]
var qs = SNP.GroupBy(x => new { x.customer_name, x.sales, x.customer_code}).Select(g=>new{trans_feeSum=g.Sum(x=>x.trans_fee),g.customer_name,g.sales,g.customer_code});
[其他解释]
var qs = SNP.GroupBy(x => new { x.customer_name, x.sales, x.customer_code})
.Select(g=>new{trans_feeSum=g.Sum(x=>x.trans_fee)} ;
[其他解释]
var qs = SNP.GroupBy(x => new { x.customer_name, x.sales, x.customer_code}).Select(g=>new{trans_feeSum=g.Sum(x=>x.trans_fee)});

            foreach (var qs_ in qs)
            {
                Response.Write(qs_.trans_feeSum+"--"+qs_.);//这个只有trans_feeSum,没有customer_name这些
            }
[其他解释]

引用:
var qs = SNP.GroupBy(x => new { x.customer_name, x.sales, x.customer_code}) ;
我要分组并求trans_fee的和,我怎么再把sum(trans_fee)加上去,高人指点


是分组后的和,还是分组每一组的和
[其他解释]
是每一组的和,不好意思,没有表达清楚,谢谢
[其他解释]
var qs = SNP.GroupBy(x => new { x.customer_name, x.sales, x.customer_code})
 .Select(g=>new{
customer_name=g.Key.customer_name,
customer_code=g.Key.customer_code,
sales=g.Key.sales,
trans_feeSum=g.Sum(x=>x.trans_fee)
} ;
 
如果觉得自己表达不清楚,可以举个例子说明一下,最清楚
[其他解释]
好的,谢谢,例子如下:

客户编号       客户      业务        运费(总计)

004              A          小刘        400

003              C            小张       300

001              R            小明       3500

很重要的一点,是想以有运费最早的第一笔单向后排序
比如上边004 的最早的一笔运费产生在2012-01-20
003 产生在2012-02-02
01   产生在2012-03-01
不知道分组,求和排序能弄到一块去不?或有什么方法可以解决,谢谢!       
[其他解释]
我是以下边的来解决分组求和的,但排序不知道怎么弄了
var qs = SNP.GroupBy(x => new { x.customer_name, x.sales, x.customer_code}).Select(g => new { trans_feeSum = g.Sum(x => x.trans_fee), g.Key.customer_code, g.Key.customer_name, g.Key.sales});

热点排行