1
如果我有三个表,一个叫Person,一个叫做Owner,另一个叫Tenant。所有三个都将SSN作为其中一个领域。我想要做的是比较Person(这是整个列表)中的SSN,以查看哪些不在OWner或Tenant中显示,以便我可以看到数据库中的哪些人从未拥有过一个单元或租用过一个单元。然后我希望能够从人员表中删除这些人员。多表查询访问比较数据
感谢
如果我有三个表,一个叫Person,一个叫做Owner,另一个叫Tenant。所有三个都将SSN作为其中一个领域。我想要做的是比较Person(这是整个列表)中的SSN,以查看哪些不在OWner或Tenant中显示,以便我可以看到数据库中的哪些人从未拥有过一个单元或租用过一个单元。然后我希望能够从人员表中删除这些人员。多表查询访问比较数据
感谢
一个简单的方法来做到这一点是使用not in
:
select p.*
from persons as p
where p.ssn not in (select ssn from owner) and
p.ssn not in (select ssn from tenant);
完美,原来如此!谢谢 – 2014-12-06 23:38:16
这是该领域真正的专业人士的标志,它将提供没有提供代码的解决方案,并且仅从解释到问题。 +1然后一些。 – 2014-12-07 00:21:04