访问表中不匹配的记录

时间:2016-08-09 15:11:04

标签: sql ms-access

我有2个表,试图拉出表B中与表A相比具有不同数字的ECID字段。

表A包含字段

Bas      BPN   ECID    Wt
A57890  57890  1001  5.6
CC4455  4455   1003  2.9
456778  6778   1003  8.9
345666  5666   1009  1.8
7899    7899   2030  2.7
3456    3456   3567   3.99

表B包含字段

Bas      BPN   ECID    Wt
A57890  57890  1001  5.6
CC4455  4455   1004  2.9
456778  6778   1003  8.9
345666  5666   1011  1.8
7899    7899   2030  2.7
3456    3456   3009  3.99

结果看起来像

Bas      BPN   ECID.TableA   ECID.TableB  Wt
CC4455  4455   1003            1004       2.9                        
345666  5666   1009            1011       1.8    
3456    3456   3567            3009       3.99

1 个答案:

答案 0 :(得分:1)

看起来表格匹配“BAS”,因此这是您需要加入的字段。 (他们可能需要在“BPN”上匹配 - 无法从您的示例中得知。如果是,请使用该字段进行连接,或者在必要时使用两者。)然后查找不同的ECN。

SELECT A.BAS, A.BPN, A.ECID, A.Wt, B.ECID, B.Wt
FROM A INNER JOIN B ON A.BPN = B.BPN
WHERE (((B.ECID)<>[A].[ECID]));

这假设您在两个表上都有所有BAS记录。如果没有,您可能需要联合查询。