我有两张桌子:
ParentID | ChildID -------- ------- 91209 91210 91209 91211 91212 91213 91212 91214
RecordID | Quantity -------- --------- 91209 1500 91210 2500 91211 7200 91212 6000 91213 5000 91214 6000
我希望结果是:
RecordId | Total Quantity -------- -------------- 91209 11200 91212 17000
我尝试了一些复杂的连接查询,但我似乎无法获得我需要的结果。任何建议都将不胜感激。
答案 0 :(得分:0)
假设表名为acc。
var parentRecords = records.Select(x =>
new Record { RecordID = parents.FirstOrDefault(y => y.ChildID == x.RecordID || y.ParentID == x.RecordID).ParentID, Quantity = x.Quantity});
var result = parentRecords.GroupBy(z => z.RecordID,
(key, value) => new { RecordID= key, TotalQuantity= value.Sum(a => a.Quantity) });