读书人

:关于dataset的数据汇总有关问题

发布时间: 2012-05-28 17:59:33 作者: rapoo

求救:关于dataset的数据汇总问题
在dataset里面有一个表结构是这样的

ID(字符) name(字符) dj(数值) shl(数值)
A01 abc 15 10
A02 abcd 15 20
A03 abc 1 30


写SQL语句的话,我可以写成:select id,sum(dj) as dj,sum(shl) as shl,count(*) from table group by id


可是现在是在dataset里面操作,所以不知道怎么处理!!

最好给代码,谢谢了!

[解决办法]
你也可以先写select id,sum(dj) as dj,sum(shl) as shl,count(*) from table group by id
这样的SQL语句,然后查询结果到Dataset中的。再操作Dataset。
[解决办法]
举个例子:
原来的数据在表dt0,现在新建一张表dt1.
对于ID=A01

C# code
datarow[] rows = dt0.select("id = 'A01'");//rows.length就是你要的id =A01的总数。string sum(dj) = "";for (int i = 0;i<rows.length;i++){sum(dj) = sum(dj)+rows[i][2];//求shl就是rows[i][3]}//sum(dj)就是你要的和。然后写到dt1中
[解决办法]
探讨
在dataset里面有一个表结构是这样的

ID(字符) name(字符) dj(数值) shl(数值)
A01 abc 15 10
A02 abcd 15 20
A03 abc 1 30


写SQL语句的话,我可以写成:select id,sum(dj) as dj,sum(shl) as shl,count(*) from table group by id


可是现……

[解决办法]
感觉可以用两种方法:
1. 循环DSet对应的Table(在数据量不大的时候可以这样做),如果你非常介意ColumnsName的问题,你可以在方法中添加需要汇总的ColumnsName参数啊...
2. 利用间接表(作同条件查询),如果数据量大,我觉得还是这样做比较保险...至少可以保证速度.
linq...看到邪恶的东西了,我不懂...据说是前几年出现的"新"玩意,好像有人指导学习下...

读书人网 >C#

热点推荐