我有一个SQL表,其中包含一些冗余数据,如下所示。 (SQL Server 2012中)从SQL Server中删除重复的行表
ColumnA(varchar) | ColumnB(varchar)
---------------- | ---------------
name1 | name2
name3 | name4
name2 | name1
name5 | name6
,我需要选择不同的数据/从该表中的行,使得它会给我造成的
ColumnA(varchar) | ColumnB(varchar)
---------------- | ---------------
name3 | name4
name2 | name1
name5 | name6
或
ColumnA(varchar) | ColumnB(varchar)
---------------- | ---------------
name1 | name2
name3 | name4
name5 | name6
基本上,姓名1 &如果名称2以name2 & name1的形式出现(不管它们所在的列的顺序如何),则应将name2视为唯一。
我不知道如何根据字符串在不同列中相等来过滤行。
有人可以帮助我吗?
所以一个细微差别如果删除所有重复如果测试数据实际上重复name1 name2和name2 name1所以两个在数据集中表示两次这些语句不会删除一组这些重复 – Matt
@Matt。 。 。似乎很清楚,OP的意图是删除“重复”,其中定义为两列中的值是相反的:*“基本上,name1和name2应该被认为是唯一的,如果它以name2&name1出现(不管它们所在列的顺序如何)。“* –