1.Requirement:
以上是我的数据表值的结果
1.需要通过汇总溢价值来对州进行分组
2.需要提到具有最高溢价值的州的地址,城市
3. Linq或for循环对我来说没问题,请帮帮我
感谢, Srikanth Anantharaman
答案 0 :(得分:1)
您可以使用此LINQ查询填充第二个表:
DataTable newTable = tbl.Clone(); // empty table, same schema
var groupedByState = tbl.AsEnumerable()
.GroupBy(r => r.Field<string>("State"));
foreach(var group in groupedByState)
{
DataRow maxPremRow = group.OrderByDescending(r => r.Field<int>("Premium")).First();
DataRow newRow = newTable.Rows.Add();
newRow.SetField("State", group.Key);
newRow.SetField("Address", maxPremRow.Field<string>("Address"));
newRow.SetField("City", maxPremRow.Field<string>("City"));
newRow.SetField("Premium", group.Sum(r => r.Field<int>("Premium")));
}