CREATE TABLE #tbl_temp (field1 int,field2 varchar(8000)) DECLARE @field1 int DECLARE @field2 char(6) DECLARE temp_cursor CURSOR LOCAL FOR SELECT field1,field2 FROM dbo.mydata ORDER BY field1 OPEN temp_cursor FETCH NEXT FROM temp_cursor INTO @field1,@field2 WHILE @@FETCH_STATUS = 0 BEGIN IF EXISTS(SELECT field1 FROM #tbl_temp WHERE field1 = @field1) UPDATE #tbl_temp SET field2 = field2 + @field2 WHERE field1 = @field1 ELSE INSERT INTO #tbl_temp (field1,field2) VALUES (@field1,@field2) FETCH NEXT FROM temp_Cursor INTO @field1,@field2 END SELECT field1,field2 FROM #tbl_temp DEALLOCATE temp_cursor DROP TABLE #tbl_tempJohn