Oracle学习教程_多表连接和子查询.pdf

  1. 1、本文档共21页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
请仔细填写文档简介。如果是PDF扫描型文档则更应该简介,将增加至少百分之六十的访问量。

支持SQL1999的新连接标准 包括以下新的TABLE JOIN 的句法结构 • CROSS JOIN——它在两个表格中创建了一个笛 卡尔积,就象是在Oracle8i中没写WHERE时一样 • NATURAL JOIN——这是一个很有用的Oracle9i的 句法,它通过从WHERE子句中自动连接标准来改 善SQL的稳定性 • USING子句——它可以通过名字来具体指定连接 支持SQL1999的新连接标准 • ON子句——这个句法允许在两个表中为连接具体 指定列名 • LEFT OUTER JOIN——它返回表格中左边的行和 右边的数值,如果没有搭配的行的话,则返回空 • RIGHT OUTER JOIN——它返回表格中右边的行 和左边的数值,如果没有搭配的行的话,则返回 空 • FULL OUTER JOIN——它返回的是两个表格中所 有的行,用空填满每一个空格。这在Oracle8i中则 没有相应的此种句法 SQL1999新连接标准语法 SELECT table1.column, table2.column FROM table1 [CROSS JOIN table2] | [NATURAL JOIN table2] | [JOIN table2 USING (column_name)] | [JOIN table2 ON(table1.column_name = table2.column_name)] | [LEFT|RIGHT|FULL OUTER JOIN table2 ON (table1.column_name = table2.column_name)]; 交叉连接 CROSS JOIN • CROSS JOIN产生了一个笛卡尔积,就象是在连接 两个表格时忘记加入一个WHERE子句一样 Select last_name, department_id from employees,departments; • 在Oracle9i中,可以使用CROSS JOIN 来达到相同 的结果 Select last_name, department_id from employees cross join deptartments; 自然连接 NATURAL JOIN • NATURAL JOIN 子句基于两个表中列名完全相同 的多个列产生连接 • 从两个表中选出连接列的值相等的所有行 • 如果两个列的名称相同,但是具有不同的数据类型, 则查询会返回一个错误 Select last_name, department_name from departments natural join employees; USING子句 •如果一些列有相同的名称但是类型不匹配, 自然连接将 出错,可以在自然连接的NATURAL JOIN 子句上使用 USING 子句来设置用于等值连接的 •不要在参照列上使用表名或者别名作为前缀 Select department_name, city from departments JOIN locations USING (location_id); ON子句 •自然连接的条件是基于表中所有同名列的等值连接 •为了设置任意的连接条件或者指定连接的列,需要 使用ON子句 •连接条件与其它的查询条件分开书写 •使用ON 子句使查询语句更容易理解 Select department_name, city from department d JOIN location l ON (d.location_id = l.id); 多表连接 多表连接就是两个以上的表被连接所用的 Select emp_id, city_name, dept_name from locations l JOIN department

文档评论(0)

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档