SQL:排除重复项
我是SQL新手,需要删除SELECT语句中的重复项 选项卡如下所示:SQL:排除重复项,sql,Sql,我是SQL新手,需要删除SELECT语句中的重复项 选项卡如下所示: | name 1 | name 2| | John | Lukas | | Simon | John | | Lukas | John | | Lukas | Simon | 输出应如下所示: name 1 name 2 John Lukas Simon John (Lukas John) this should be excluded Lukas Simon 但其中又一次出现了
| name 1 | name 2|
| John | Lukas |
| Simon | John |
| Lukas | John |
| Lukas | Simon |
输出应如下所示:
name 1 name 2
John Lukas
Simon John
(Lukas John) this should be excluded
Lukas Simon
但其中又一次出现了卢卡斯·约翰。我试过使用DISTINCE,但它不起作用。谁能帮帮我吗?提前谢谢 一种方法是:
select name1, name2
from t
where name1 < name2 or
not exists (select 1 from t t2 where t2.name1 = t.name2 and t2.name2 = t.name1);
这假设重复项只是可能顺序相反的对。如果可以有完整的副本,请使用“选择不同的”。一种方法是:
select name1, name2
from t
where name1 < name2 or
not exists (select 1 from t t2 where t2.name1 = t.name2 and t2.name2 = t.name1);
这假设重复项只是可能顺序相反的对。如果您可以拥有完整的副本,则使用“选择不同的”。虽然您想要的是可能的,但这看起来是一个严重的设计问题。为什么不将列指定为名字和姓氏呢。另外,删除重复项是因为你认为没有两个人可以有相同的名字。虽然你想要的是可能的,但这看起来是一个严重的设计问题。为什么不将列指定为名字和姓氏呢。另外,删除重复项是你认为没有两个人可以有相同的名字。非常感谢,这就是我要找的!非常感谢,这就是我要找的!