for deleting duplicate rows subquery or cueser is Better in performance?

For deleting duplicate rows, i can use cursor and subquery.

cursor code

Declare dup_cursor cursor for
select acctnumber from LinkUrnABSADMBAR
group by acctnumber
having count(*) > 1

Open dup_cursor

Fetch Next from dup_cursor INTO @acctnumber

While (@@Fetch_Status = 0)
Begin

Delete from LinkUrnABSADMBAR
where acctnumber = @acctnumber

Fetch Next from dup_cursor INTO @acctnumber
End

Close dup_cursor
Deallocate dup_cursor

Subquery code

delete from galupload2000..test where id in (select id from galupload2000..test group by id having count(*) >1)

My question is which one isBetter in performance?

Thanks

Sandipan

[1323 byte] By [sandipan] at [2007-12-24]
# 1

Subqueries run faster than cursors as a general rule.

BobP

BobP-BIM at 2007-8-31 > top of Msdn Tech,SQL Server,SQL Server Integration Services...
# 2
Thanks Bob
sandipan at 2007-8-31 > top of Msdn Tech,SQL Server,SQL Server Integration Services...

SQL Server

Site Classified