我的情景如下:
我有以下数据 -
1, samename, Grand Central, New York, 12
2, samename, Opera House, Sydney, 12
3, samename, Opera House, Sydney, 12
4, name2, Emirates, London, 13
5, name3, Opera House, Sydney, 14
我想把它输出为两个表
12, samename
13, name2
14, name3
Grand Central, New York, 12
Opera House, Sydney, 12
Opera House, Sydney, 12
Emirates, London, 13
Opera House, Sydney, 14
这是我继承的非常糟糕的设计 - 我试图让它变得更好......而不会破坏旧代码。
答案 0 :(得分:4)
您需要分两步完成,首先将其分组到sizeof(int)
和Name
:
GroupID
并在第二种情况下将它们与其他三列(var result = list.GroupBy(x=>new {x.GroupID, x.Name})
.Select(g=> new { GroupID = g.Key.GroupID, Name = g.Key.Name});
,GroupID
和Place
)分组:
Location