SQL:使用公共值组合结果集?

时间:2016-02-24 18:24:06

标签: sql ms-access ms-access-2010

在MS Access 2010中,我有(a)多个包含名称(主键)和ID号的表; (b)包含所有可能的名称变体(主键)的查找表,以及每个名称的姓氏。 e.g。

tableA
name         ID
"Jones, B"   1
"Smith, A"   2

tableB
name         ID
"Jones"      4
"Smith, Abe" 5

lookupTable
name         Lastname
"Smith, A"   "Smith"
"Smith, Abe" "Smith"

我想要最终得到的是一个查询,它返回lookupTable.Lastname中每个不同值的ID,例如

Lastname    tableA.ID    tableB.ID
"Smith"     2            5

我无法理解如何做到这一点。到目前为止,我有类似的东西:

SELECT * FROM 
(lookupTable LEFT JOIN tableA ON lookupTable.name = tableA.name) 
LEFT JOIN tableB ON lookupTable.name = tableB.name

1 个答案:

答案 0 :(得分:0)

我希望这个快速提示有所帮助。 看起来你正朝着正确的方向前进。我会这么想。 您可能想要添加到您拥有的内容中       SELECT * FROM       (lookupTable LEFT JOIN tableA ON lookupTable.name = tableA.name)       LEFT JOIN tableB ON lookupTable.name = tableB.name

喜欢的东西      SELECT DISTINCT语句 如本页所示。

http://www.w3schools.com/sql/sql_distinct.asp

我希望这会有所帮助。

谢谢,