J
jonyhuang
Unregistered / Unconfirmed
GUEST, unregistred user!
意图:有两个表,结构如下
aa bb
类型 总计 类型 金额
1 10 1
1 5 2
2 6 3
2 9
3 10
1 12
希望将aa表的数据按类型汇总到bb表中,得到以下结果
bb
类型 金额
1 27
2 15
3 10
我试写了一段程序,但行不通,请各位高手指点
VAR CC,EE:STRING;
BEGIN
query1.close;
query1.sql.clear;
query1.sql.add('select 类型,sum(总计) as hj from aa group by
类型');
query1.open;
CC:=inttostr(query1.fieldbyname('hj').asinteger;
(只能得到第一笔的数据,后面的???)
ee:=query1.fieldbyname('类型').asstring;
query1.close;
query2.sql.clear;
query2.sql.add('update bb set 金额='+''''+CC+''''+where
类型='+''''+ee+'''');
query2.ExecSQL; (只能更改一笔数据,后面的???)
END;
这样写法每次只能更换一种类型的数据,再这里我连循环
都不知道怎用,能否有一次全部更换的,请再指点一下,谢谢!
jony
aa bb
类型 总计 类型 金额
1 10 1
1 5 2
2 6 3
2 9
3 10
1 12
希望将aa表的数据按类型汇总到bb表中,得到以下结果
bb
类型 金额
1 27
2 15
3 10
我试写了一段程序,但行不通,请各位高手指点
VAR CC,EE:STRING;
BEGIN
query1.close;
query1.sql.clear;
query1.sql.add('select 类型,sum(总计) as hj from aa group by
类型');
query1.open;
CC:=inttostr(query1.fieldbyname('hj').asinteger;
(只能得到第一笔的数据,后面的???)
ee:=query1.fieldbyname('类型').asstring;
query1.close;
query2.sql.clear;
query2.sql.add('update bb set 金额='+''''+CC+''''+where
类型='+''''+ee+'''');
query2.ExecSQL; (只能更改一笔数据,后面的???)
END;
这样写法每次只能更换一种类型的数据,再这里我连循环
都不知道怎用,能否有一次全部更换的,请再指点一下,谢谢!
jony