原表A
AA BB CC
1 100 20
1 -100 20
1 100 25
2 200 30
2 -200 30
2 200 35
1 100 40
1 200 40
1 -300 40
3 300 45
目的表 B
AA BB CC
1 100 25
2 200 35
3 300 45
目标表B的数据是由表A中去除一些不确定的数据,留下表B的数据是已确定的。表A中AA、BB字段的数据一开始录入就确定的,而CC是可能不确定的,如:AA=1,BB=100,CC=20;然后某一时间CC的数据被确定了,就先录入第二行数据冲掉第一次录入的总数,第二行:AA=1,BB=-100,CC=20;最后把确定的数据录入:AA=1,BB=100,CC=25;我要留下到B表的数据就是这最后录入的确定数据。
具体实现的SQL语句:
select AA ,sum(BB) , CC from A group by AA,CC having sum(BB)<>0
要参考:http://community.csdn.net/Expert/topic/5509/5509771.xml?temp=.8115656