如何分组和求和操作数据表



这是我的数据表

Id    Article    Lot      Ordered      Unit Shipment    Difference
1     32207      21309    80           Case 80          0
2     32218      21309    70           Case 60          10
3     32237      22359    50           Case 50          0
4     32255      24299    100          Case 100         0
5     32207      24299    110          Case 110         0
6     32218      21309    80           Case 75          5
7     32237      21309    60           Case 60          0
8     32255      21309    75           Case 75          0

我需要组By列Article和Lot,和Sum数量列(订购,装运和差异)。

预期结果将是:

Article Lot Ordered Unit    Shipment    Difference
32207   21309   80  Case    80          0
32218   21309   150 Case    135         15
32237   22359   50  Case    50          0
32255   24299   100 Case    100         0
32207   24299   110 Case    110         0
32237   21309   60  Case    60          0
32255   21309   75  Case    75          0

我希望使用Linq获得结果。有人能帮我吗?

Thanks so much

尝试将其强制转换为可枚举对象,然后使用linq

from v in mytable
group v by new {v.Article,v.Lot} into g
select new
{
    Article = g.Key.Article ,
    Lot = g.Key.Lot ,
    Ordered = g.Sum(X=>X.Ordered),
    Unit = g.First(),
    Shipment = g.Sum(X=>X.Shipment),
    Difference = g.Sum(X=>X.Difference) 
}

相关内容

最新更新