--累加更新字段
DECLARE @id numeric
DECLARE @total_electric varchar(20)
DECLARE @total_energy varchar(20)
DECLARE @total_water varchar(20)
DECLARE @total_electricT varchar(20)
DECLARE @total_energyT varchar(20)
DECLARE @total_waterT varchar(20)
SET @total_electricT=0SET @total_energyT=0SET @total_waterT=0DECLARE My_Cursor CURSOR --定义游标
FOR (SELECT id,total_electric,total_energy,total_water FROM tablename WHERE id>=20320AND id<=20331) --查出需要的集合放到游标中
OPEN My_Cursor
FETCHNEXTFROM My_Cursor INTO @id,@total_electric,@total_energy,@total_water
WHILE @@FETCH_STATUS = 0BEGINSET @total_electricT=CONVERT(FLOAT,@total_electricT)+CONVERT(FLOAT,@total_electric)
SET @total_energyT=CONVERT(FLOAT,@total_energyT)+CONVERT(FLOAT,@total_energy)
SET @total_waterT=CONVERT(FLOAT,@total_waterT)+CONVERT(FLOAT,@total_water)
UPDATE tablename SET total_electric=@total_electricT,total_energy=@total_energyT,total_water=@total_waterT WHERE id=@id;
FETCH NEXT FROM My_Cursor INTO @id,@total_electric,@total_energy,@total_water; --读取下一行数据 ENDCLOSE My_Cursor;--关闭游标
DEALLOCATE My_Cursor; --释放游标
GO