求C# 中交叉表实现算法

ghost_xxx 2008-09-07 08:23:53
目前需要一个算法实现交叉表
原二维表示例:
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)将交叉表数据还原成二维表格式

不知道各位大侠有没好的算法逻辑,最好兼顾效率,谢谢!
...全文
368 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
liffe 2009-08-15
  • 打赏
  • 举报
回复
绑定
wartim 2008-12-03
  • 打赏
  • 举报
回复
对了,只要判断同样: 货号 颜色 尺码 的行有没有
或者有的判断 同样: 货号 尺码 的行有没有 就可以了
wartim 2008-12-03
  • 打赏
  • 举报
回复
[Quote=引用楼主 ghost_xxx 的帖子:]
目前需要一个算法实现交叉表
原二维表示例:
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 …
[/Quote]

用代码也没什么太高效的办法把,无非

for 循环读二维表
{
读到“3353 BBQ 04212 00071105 黑 35 1 ”
同样: 品牌 类别 货号 颜色 尺码 的行有没有 ,有就+1,没有就生成这个尺码列,获取你还要根据hscode或者别的判断是男装还是女装

}
chuyes 2008-12-03
  • 打赏
  • 举报
回复
关注,我也在找类似问题的解决方法,还没有找到。
ghost_xxx 2008-09-15
  • 打赏
  • 举报
回复
没有高手么。。。
ghost_xxx 2008-09-09
  • 打赏
  • 举报
回复
谢谢大家的回复,就没有高效算法代码实现的可能了么。。。。
LovingAlison 2008-09-08
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 mjjzg 的回复:]
1.可以将两个表建立关联,当一个表中的数据改变时另一个表中的数据也响应的改变
2.运用存储过程来执行
[/Quote]
mjjzg 2008-09-07
  • 打赏
  • 举报
回复
1.可以将两个表建立关联,当一个表中的数据改变时另一个表中的数据也响应的改变
2.运用存储过程来执行
孤剑 2008-09-07
  • 打赏
  • 举报
回复
建议建立视图,用视图去实现。
JeffChung 2008-09-07
  • 打赏
  • 举报
回复
两层循环,
外层的是不同货物,内层做同一货物的不同尺码.内层的数据一条条加到列(column)中去
外层的还是row
loworth 2008-09-07
  • 打赏
  • 举报
回复
这个关注一下

以往也都是直接从数据库SQL下手的
cpw999cn 2008-09-07
  • 打赏
  • 举报
回复
SQL的话还好办,可惜你现在不是,用代码去实现效率肯定低,我建议LZ还是建临时表再用SQL实现吧~
JeffChung 2008-09-07
  • 打赏
  • 举报
回复
表设计得冗余了

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧