1

这是我的数据表

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

我需要 Group By 列 Article 和 Lot,以及 Sum 数量列(Ordered、Shipment 和 Difference)。

预期的结果是:

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 获得结果。谁能帮我?

非常感谢

4

1 回答 1

0

尝试将其转换为可枚举然后使用 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) 
}
于 2012-12-27T00:37:58.617 回答