栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

何时使用左外部联接?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

何时使用左外部联接?

联接用于将两个相关的表组合在一起。

在您的示例中,您可以组合Employee表和Department表,如下所示:

SELECt FNAME, LNAME, DNAMEFROMEMPLOYEE INNER JOIN DEPARTMENT ON EMPLOYEE.DNO=DEPARTMENT.DNUMBER

这将导致一个记录集,如:

FNAME   LNAME   DNAME-----   -----   -----John    Smith   ResearchJohn    Doe     Administration

我用

INNER JOIN
上面的。
INNER JOIN
s将两个表组合在一起,以便 显示两个表中具有匹配项的记录,并且在这种情况下,将它们
连接 到部门编号(Employee中的字段DNO,Department表中的DNUMBER)。

LEFT JOIN
使用s可以在第一个表中有记录但第二个表中 没有 记录时合并两个表。例如,假设您要列出所有雇员以及所有受抚养者的列表:

SELECt EMPLOYEE.FNAME as employee_first, EMPLOYEE.LNAME as employee_last, DEPENDENT.FNAME as dependent_last, DEPENDENT.LNAME as dependent_lastFROMEMPLOYEE INNER JOIN DEPENDENT ON EMPLOYEE.SSN=DEPENDENT.ESSN

这里的问题是,如果员工 没有 受抚养人,那么他们的记录将根本不会显示-因为DEPENDENT表中没有匹配的记录。

因此,使用 连接将所有数据保留在“左”(即第一个表)上,并将所有匹配的数据保留在“右”(第二个表)上:

SELECt EMPLOYEE.FNAME as employee_first, EMPLOYEE.LNAME as employee_last, DEPENDENT.FNAME as dependent_first, DEPENDENT.LNAME as dependent_lastFROMEMPLOYEE LEFT JOIN DEPENDENT ON EMPLOYEE.SSN=DEPENDENT.ESSN

现在,我们获得了 所有 员工记录。如果给定员工没有匹配的受抚养人,则

dependent_first
dependent_last
字段将为空。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/421153.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号