2013-11-01 35 views
0

我有3个表格。如何在使用简单连接时避免重复行

阿尔法

ID  NAME 
____ _____ 

测试版

NAME GOALS 
_____ _______ 

查理

NAME SCHOOL 
_____ _________ 

我想要一个表

ID NAME GOALS SCHOOL 
______________________________ 

注:

ID是不是唯一的。所以每个ID可能会有很多名字。现在的问题是当我使用内连接或左连接时,我得到许多重复的行。做帮助(SQL新手)

谢谢:))

+4

请更新您的问题以显示无法正常工作的查询。 – BWS

+0

您是否尝试基于名称的内部连接?你的名字是主键吗? –

回答

0

名称是你的外键,所以如果在测试版两个同名的,或者查理,这将复制阿尔法行。

您需要决定的是如何汇总其他表中的值。 你可能会想要每个名字的目标总数,但学校,你必须选择一个。否则,每个名称都会有重复的行。

所以,如果Alpha是

1 John 
2 Sue 

和查理是

John UHT 
John MIT 
Sue MIT 

您将与

1 John UHT 
1 John MIT 
2 Sue MIT 

最终如果β具有

John 4 
John 5 

情况变得更糟。现在约翰将出现4次。

所以,你需要应用聚合方法。然后做

... Group By Name