[指南]左连接右连接左连接/右连接/全连接(详细)从两个或更多个表中组合数据的过程称为连接表。数据库管理程序从指定的表中形成行的所有组合。对于每个组合,它都测试连接条件。连接条件是带有一些约束的搜索条件。有关约束的列表,参考SQLReference。注意:连接条件涉及的列的数据类型不必相同;然而,这些数据类型必须相容。计算连接条件的方式与计算其他搜索条件的方式相同,并且使用相同的比较规则。如果未指定连接条件,则返回在FROM子句中列出的表中行的所有组合,即使这些行可能完全不相关。该结果称为这两个表的交叉积。本节中的示例基于下面两个表。这两个表只是样本数据库中表的简化形式,在样本数据库中并不存在。这两个表一般用来概述关于连接的重点。SAMP_STAFF列出未作为合同工雇用的雇员的姓名以及这些雇员的职务说明,而SAMP_PROJECT则列出雇员(合同工和全职人员)的姓名以及这些雇员所参与的项目。这些表如下:。因未指定连接条件,所以给出了行的所有组合:,,,,SAMP_STAFF此语句产生下列结果:两个主要的连接类型是内连接和外连接。到目前为止,所有示例中使用的都是内连接。内连接只保留交叉积中满足连接条件的那些行。如果某行在一个表中存在,但在另一个表中不存在,则结果表中不包括该信息。下列示例产生两个表的内连接。该内连接列出分配给某个项目的全职雇员信息:,,,,=,也可以指定如下内连接:,,,=:注意:该内连接的结果由右表和左表中姓名列的值匹配的行组成,'Haas'和'Thompson'都包括在列出所有全职雇员的SAMP_STAFF表中以及列出分配给某个项目的专职和合同雇员的SAMP_PROJECT表中。外连接是内连接和左表和,或右表中未包括内连接中的那些行的并置。当对两个表执行外连接时,可任意将一个表指定为左表而将另一个表指定为右表。外连接有三种类型:左外连接包括内连接和左表中未包括在内连接中的那些行。右外连接包括内连接和右表中未包括在内连接中的那些行。全外连接包括内连接以及左表和右表中未包括在内连接中的行。使用SELECT语句来指定要显示的列。在FROM子句中,列出后跟关键字LEFTOUTERJOIN、RIGHTOUTERJOIN或FULLOUTERJOIN的第一个表的名称。接着需要指定后跟ON关键字的第二个表。在ON关键字后面,指定表示要连接的表之间关系的连接条
[指南]左连接右连接 来自淘豆网www.taodocs.com转载请标明出处.