這裡使用了迴圈刪除,並不是最優的方法,歡迎園友不吝批評指正。 ...
DECLARE @Count INT = 1 WHILE @Count > 0 BEGIN DELETE TB FROM TableName TB WHERE TB.ID IN (SELECT MIN(ID) FROM TableName TB2 GROUP BY TB2.Column1,TB2.Column2,...TB2.ColumnN HAVING COUNT(1) > 1); SET @Count = @@ROWCOUNT; END
這裡使用了迴圈刪除,並不是最優的方法,歡迎園友不吝批評指正。