查找,搜索和比较表之间的值和差异

时间:2015-04-20 11:39:15

标签: sql sql-server

我有一个问题,如何创建查询。

在SQL Server中我有表公司(带IDcomp),Cap,Founder,Adress ......表格上限,创始人和地址都与IDcomp上的公司相关联。表格上限,创建者和地址具有属性country。我想要做的是,检查是否有任何地址国家/地区没有Cap或反向特定IDcomp。在这两个表中可以是几个不同的国家。我的SQL查询:

SELECT DISTINCT c.IDcomp, c.compName, cap.country, a.country
FROM Company AS C
    JOIN Adress AS a ON(a.IDcomp = c.IDcomp AND a.base = '02') -- founder address
    JOIN Capital AS cap ON(cap.IDcomp = a.IDcomp)
    JOIN Founder AS F ON(f.IDcomp = a.IDcomp)
WHERE c.obl = '103'
    AND (a.zap_num = f.zap_num AND f.IDcomp = c.IDcomp)
    AND (cap.country != a.country)-- AND nu.country = u.country)
    AND a.country IS NOT NULL
    AND cap.country IS NOT NULL
    AND f.country IS NOT NULL
ORDER BY c.IDcomp

通过此查询,我无法获得正确的结果,其中创始人和上限中有2个或更多国家/地区相同。我该怎么办?

0 个答案:

没有答案