分几步,以下操作应在sqlserver2005以上或oracle9i以上执行。否则会报错。
1、创建备份表
create table card_bak as select * from card;
2、删掉原表数据
truncate table card;
3、将备份表中数据经过sql语句查询后的结果(也就是你结果显示的结果)插入原表中
insert into card
select row_number() over (order by 姓名) as rn,t.姓名,t.积分
from (select 姓名,sum(积分) as 积分 from card_bak group by 姓名) t
4、检查数据是否正确
5、删掉备份表
drop table card_bak;