• This does the same thing, simplier and NO CURSORS.  If it can be done without a cursor, than much better. 

    CREATE TABLE [dbo].[Employee] (

                [id] [int] NULL ,

                [name] [Varchar] (50) COLLATE Latin1_General_CI_AS NULL ,

                [salary] [Numeric](18, 2) NULL

    &nbsp ON [PRIMARY]

    GO

    /*********************************************************/

    /**********************************************************/

    /* Script for Insertion of duplicate records to the Table */

    Insert into employee values (1,'Ram', 1000.00)

    Insert into employee values (1,'Ram', 1000.00)

    Insert into employee values (2,'Joe', 2000.00)

    Insert into employee values (2,'Joe', 1000.00)

    Insert into employee values (3,'Mary', 1000.00)

    Insert into employee values (4,'Julie', 5000.00)

    Insert into employee values (2,'Joe', 1000.00)

    Insert into employee values (1,'Ram', 1000.00)

    /**********************************************************/

    BEGIN TRANSACTION

    Select [id], [name], [salary]

    INTO #MakeUnique

    FROM employee

    GROUP BY [id], [name], [salary]

    DELETE FROM employee  

    INSERT INTO employee( [id], [name], [salary] )

    SELECT [id], [name], [salary] FROM #MakeUnique

    COMMIT TRANSACTION

     

    SELECT * FROM employee

    DROP TABLE #MakeUnique

    DROP TABLE employee