相互引用的列

columns referencing each other

假设有一个 table 包含如下数据行。

如上所示,申请人 79 有一个双胞胎 80,双胞胎 80 有申请人 79 作为双胞胎。

由于ID 11和12确实是同一个信息,所以我想select一个唯一的孪生数据如下。

如何在 SQL 服务器中实现此目的?

非常感谢您。

一个选项使用not exists

select t.*
from mytable t
where not exists (
    select 1
    from mytable t1
    where 
        t1.applicantid = t.twinid
        and t1.twinid = t.applicantid
        and t1.applicantid < t.applicantid
)

存在镜像记录时,保留最小applicantid的记录。

你可以简单地做:

select * from t where ApplicantId < TwinId