• I think you can use this approach too

    --table structure

    CREATE TABLE [a4] (

    [id] [int] IDENTITY (1, 1) NOT NULL ,

    [title] [varchar] (50) ,

    [name] [varchar] (50) NULL ,

    CONSTRAINT [PK_a4] PRIMARY KEY CLUSTERED

    (

    [id]

    ) ON [PRIMARY]

    ) ON [PRIMARY]

    GO

    --to have distinct id for the doubles

    --the first id's

    select distinct a.id, a.title, a.name from a4 a, a4 b where a.title = b.title and a.name = b.name and a.id < b.id

    --the last id's

    select distinct a.id, a.title, a.name from a4 a, a4 b where a.title = b.title and a.name = b.name and a.id > b.id

    --to delete the first id's doubles and get unique rows in the original table

    delete from a4 where id in (

    select distinct a.id from a4 a, a4 b where a.title = b.title and a.name = b.name and a.id < b.id )

    --to delete the last id's doubles and get unique rows in the original table

    delete from a4 where id in (

    select distinct a.id from a4 a, a4 b where a.title = b.title and a.name = b.name and a.id > b.id )