【发布时间】:2019-03-15 12:45:03
【问题描述】:
我有一个这样的数据表:
name | color of name
----------------------
x | red
y | blue
z | yellow
x | yellow
y | red
我需要像这样获取这张表的轴心:
name | red | blue | yellow | total
-------------------------------------------------------
x | 1 | 0 | 1 | 2
y | 1 | 1 | 0 | 2
z | 0 | 0 | 1 | 1
如何在 VB.NET 中使用 Linq 做到这一点?
颜色不是动态的。我可以将它们以硬编码的形式放入查询中。
所以我需要按名称和列中记录颜色的总和对所有记录进行分组。 然后是总颜色的总和(如果你在第一个方面提供帮助,我可以计算总数:p)
【问题讨论】:
-
我建议将其视为两个步骤:1. 透视数据 2. 添加
total列。name和color of name列是否仅限于有限的数据集,还是您需要一个完全通用的解决方案? -
如果您可以编辑问题并解释您已经尝试过的内容,这将有所帮助。
-
@NetMage 你是完全正确的。大问题是第一个。颜色名称受到限制,可以硬编码。我需要按名称对所有记录进行分组,名称的规模非常大。
标签: c# .net vb.net linq datatable