如何查找2个匹配的记录,将一个表中的两个字段与另一个表中的两个字段进行比较?

时间:2014-12-29 19:32:58

标签: ms-access-2010

使用MS Access 2010,我需要比较两个表,只检索匹配项。

表[EE]有5个字段:

Field4, SSN, Birthdate, Address1, Address2

表[已更新]包含字段:

Field4, DOB

和其他一些与此无关的问题。

我需要从字段Field4 AND Birthdate中找到[EE]中的所有记录,它们在[UPDATED]中的BOTH Field4和DOB中具有匹配值。我试过INNER JOIN,它给了我几个副本。我试过了:

SELECT EE.Birthdate, EE.Field4
FROM EE, UPDATED
WHERE (EE.Birthdate = UPDATED.DOB) 
AND (EE.Field4 = UPDATED.FIELD4)

SELECT EE.Birthdate, EE.Field4
FROM INNER JOIN UPDATED ON EE.Birthdate = UPDATED.DOB)
  AND (EE.Field4 = UPDATED.FIELD4)

我收到了很多重复记录,只想要出现在BOTH表中的记录。

1 个答案:

答案 0 :(得分:0)

实际上可能存在重复。添加DISTINCT关键字以消除重复:

SELECT DISTINCT EE.Birthdate, EE.Field4
FROM EE
JOIN UPDATED ON EE.Birthdate = UPDATED.DOB
  AND EE.Field4 = UPDATED.FIELD4

我还修复了一些语法错误。

另外,总是喜欢使用正确的连接语法。