可以说我有两个都有SSN变量的表,并且我想只显示一个表,而不是两个表。

正确的方法是什么?

最佳答案

这是一种方法:

select coalesce(t1.ssn, t2.ssn)
from t1 full outer join
     t2
     on t1.ssn = t2.ssn
where t1.ssn is null or t2.ssn is null;


这适用于大多数数据库,但不适用于MySQL。以下内容几乎可以在任何数据库中工作:

select ssn
from ((select ssn, 't1' as which
       from t1
      ) union all
      (select ssn, 't2' as which
       from t2
      )
     ) t
group by ssn
having count(distinct which) = 1

关于mysql - 如何比较SQL中的两列?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17539040/

10-12 06:19