求C# 中交叉表实现算法
目前需要一个算法实现交叉表
原二维表示例:
id 品牌 类别 货号 颜色 尺码 数量
3353 BBQ 04212 00071105 黑 35 1
3353 BBQ 04212 00071105 黑 36 1
3353 BBQ 04212 00071105 黑 37 1
3353 BBQ 04212 00071105 绿 34 1
3353 BBQ 04212 00071105 绿 35 1
3353 BBQ 04212 00071105 绿 37 1
3353 BBQ 04212 00071205 灰 34 1
3353 BBQ 04212 00071205 灰 36 1
3353 BBQ 04212 00071205 灰 37 1
3353 BBQ 04212 00201107 白 37 2
需达到效果示例:
id 品牌 类别 货号 颜色 女34 女35 女36 女37 女38 女39
3353 BBQ 04212 00071105 黑 0 1 1 1 0 0
3353 BBQ 04212 00071105 绿 1 1 0 1 0 0
3353 BBQ 04212 00071205 灰 1 0 1 1 0 0
3353 BBQ 04212 00201107 白 0 0 0 2 0 0
--------------------
以前考虑过SQL语句的方式实现,因为现在是在两个数据集之间处理,不能直接对表操作。现在想得到一个代码编写一个动态方法,实现功能如下:
1)通过二维表生成交叉表,并填充数据显示
2)将交叉表数据还原成二维表格式
不知道各位大侠有没好的算法逻辑,最好兼顾效率,谢谢!