2
我有一個包含兩個字段a和b的表。某些記錄在a = b和b = a的意義上是重複的。我想刪除這些記錄。刪除表中的記錄,其中a = b和b = a
考慮一下:
declare @temp table (a int, b int)
insert into @temp values (1, 2)
insert into @temp values (3, 4)
insert into @temp values (4, 3)
insert into @temp values (5, 6)
--delete 3, 4 or 4, 3
select * from @temp
/*
a | b
--|--
1 | 2
3 | 4
5 | 6
or (I don't care which one)
a | b
--|--
1 | 2
4 | 3
5 | 6
*/
我怎樣才能做到這一點?它需要支持Microsoft SQL Server 2000及更高版本。
+1,我不得不說,經典的重複刪除策略。我之前在桌面上使用過這個,因爲我的同事們認爲一個獨特的約束是荒謬的! – 2013-03-13 15:52:19
謝謝,對我完美的作品。 – Trellmor 2013-03-13 16:06:28
不客氣':D'它甚至可以在sql server 2000上運行? – 2013-03-13 16:06:52