我最近遇到的一个问题一直困扰着我。
如果EquiJoin使用两个具有多个同名属性的关系,并且有多个值匹配,那么结果会是什么?例如,考虑以下内容:
R(A,B,C,D)和S(C,D,E,F)。
如果您将equijoin应用于上述内容,如下所示:
R(equi-join)(条件:R.C = S.C)S,结果关系将如何表现?我对两种关系的常见“D”属性及其在结果中的存在特别感兴趣。
非常感谢您的回答!
答案 0 :(得分:0)
这应该回答你的问题:
表格地址
first_name last_name address
John Miller 5 Miller Street
Jane Smith 6 Smith Way
Jane Becker 7 Becker Street
表格作业
first_name last_name job
John Miller milkman
Jane Smith software engineer
Jane Becker translator
<强>查询强>
select *
from addresses
inner join jobs on jobs.first_name = addresses.first_name
<强>结果强>
first_name last_name address job
John Miller 5 Miller Street milkman
Jane Smith 6 Smith Way software engineer
Jane Smith 6 Smith Way translator
Jane Becker 7 Becker Street software engineer
Jane Becker 7 Becker Street translator
由于我们不是通过名字和姓氏加入,而是仅使用名字,我们会加入不属于一起的记录。