- 1、本文档共39页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[经管营销]第5章 多表查询
第五章 多表查询 东软人才实训中心 本章要点 多表连接的定义 笛卡尔积 等值连接 不等值连接 外连接 ANSI SQL:1999标准的连接语句 Union,Union All(集合运算符) 笛卡尔积 笛卡尔积是把表中所有的记录作乘积操作,生成大量的结果,而通常结果中可用的值有限。笛卡尔积出现的原因多种多样,通常是由于连接条件缺失造成的。 多表连接主要分为 等值连接 不等值连接 外连接 自连接? 等值连接 等值连接又称简单连接或内连接。就是当两个表的公共字段相等的时候把两个表连接在一起。公共字段是两个表中有相同含义的列。 等值连接 等值连接的语法结构 在 WHERE 子句中写连接条件 当多个表中有重名列时,必须在列的名字前加上表名作为前缀 等值连接的示例 等值连接中的记录筛选 多表连接中,记录筛选语句同样写在WHERE语句中,用逻辑AND和连接判断语句写在一起。 表别名的书写 等值连接表别名示例 表别名的书写(续) 关于表别名需要注意以下几点: 表别名长度不超过30个字符; 表别名定义在FROM子句中; 如果已经定义了表别名,那么只能使用表别名而不能使用原表名; 表别名的有效范围只是当前语句。 SQL语句的书写顺序是: SELECT FROM WHERE ORDER BY 而实际的执行顺序是: FROM WHERE SELECT ORDER BY 两个以上表连接 查找特定城市员工信息。 不等值连接 除了等号之外,在表连接语句中还可以使用其它的运算符。这种使用除等号之外运算符的连接语句被称为不等值连接。 使用不等值连接查询可以查询两个表中具有非等值关系的数据。操作符可以是比较运算符,也可以是between···and 或者是in、like。 不等值连接演示 不等值连接示例 外连接 为了查找到所有记录,包括没有匹配的记录,需要用外连接语句来实现。 右外连接:以右表为基准,右表中的每个记录都必须显示,即使左表中没有与之相匹配的记录。 左外连接:以左表为基准,左表中的每个记录都必须显示,即使右表没有与之相匹配的记录。 注意:+放在没有与之相匹配表的那一端。 外连接(续) 外连接示例 例5-8 所有部门信息,不管部门是否有员工。 外连接示例(续) 例5-9 所有员工信息,不管员工是否有部门。 ANSI SQL:1999标准的连接语法 Oracle9i除了Oracle自己的连接语法外,同时支持美国国家标准协会(ANSI)的SQL:1999标准的连接语法。 ANSI SQL:1999的连接语法 CROSS JOIN:交叉连接,生成笛卡尔积; NATURAL JOIN:自然连接; USING (column_name):USING子句,通过名字来具体指定连接 JOIN table2 ON (table1.column_name = table2.column_name):等值连接语句; [LEFT|RIGHT|FULL OUTER JOIN:左外连接|右外连接|全外连接。 交叉连接 交叉连接子句(CROSS JOIN)是在SQL99标准中,为了生成笛卡尔积而设计的。 自然连接 NATURAL JOIN是SQL99中新增语句,连接条件是两个表中所有的值和数据类型都相同的同名列。如果仅列名相同而数据类型不同,则报错。 USING子句 USING (column_name)子句也是SQL99新增子句,可以较灵活的完成在多表连接,多列列名相同时,使用其中的一列同名列连接,而不需写连接条件的功能。 USING子句和NATURAL JOIN不能在一条语句中同时书写。 USING子句示例 ON子句 例 SQL99实现两表以上连接 例5-14 查找特定城市员工信息。 SQL99:左外连接 在LEFT OUTER JOIN中,会返回所有左边表中的行,即使在右边的表中没有可对应的列值。 例5-15 所有员工信息,不管员工是否有部门。 SQL99:右外连接 RIGHT OUTER JOIN,会返回所有右边表中的行,即使在左边的表中没有可对应的列值。 例5-16 所有部门信息,不管部门是否有员工。 SQL99:全外连接 全外连接(FULL OUTER JOIN)主要功能是返回两表连接中等值连接结果,及两个表中所有等值连接失败的记录。 所有信息,不管部门是否有员工,也不管员工是否有部门。 UNION 操作符(也叫联合运算) UNION 操作符(也叫联合运算) UNION (联合)运算(连接的是俩个查询的结果) UNION 运算返回所有由任一查询选择的行。用 UNION 运算从多表返回所有行,但除去任何重复的行。 原则 被选择的列数和列的数据
您可能关注的文档
- [经管营销]社会成本问题—科斯.doc
- [经管营销]物流成本管理4.ppt
- [经管营销]直接作业环节安全管理.ppt
- [经管营销]福禄鑫尊.ppt
- [经管营销]福耀玻璃工业集团股份有限公司.pdf
- [经管营销]私募基金.doc
- [经管营销]种子检验员基础知识.ppt
- [经管营销]科技企业优惠政策汇总 鼓励企业技术创新税收优惠政策讲解.ppt
- [经管营销]科斯论文《企业的性质》.doc
- [经管营销]科达机电08年年报.pdf
- 2024年浙江省杭州市临安市上甘街道招聘社区工作者真题及参考答案详解一套.docx
- 2024年河南省许昌市长葛市石固镇招聘社区工作者真题含答案详解.docx
- 2024年河南省郑州市登封市大冶镇招聘社区工作者真题及参考答案详解.docx
- 2024年浙江省宁波市余姚市低塘街道招聘社区工作者真题及参考答案详解一套.docx
- 2024年浙江省丽水市莲都区峰源乡招聘社区工作者真题及答案详解1套.docx
- 2024年河南省郑州市中原区石佛镇招聘社区工作者真题及答案详解1套.docx
- 2024年浙江省杭州市萧山区河庄镇招聘社区工作者真题带答案详解.docx
- 2024年浙江省嘉兴市桐乡市河山镇招聘社区工作者真题含答案详解.docx
- 2024年河南省郑州市金水区未来路街道招聘社区工作者真题参考答案详解.docx
- 2024年浙江省宁波市慈溪市观海卫镇招聘社区工作者真题及参考答案详解一套.docx
最近下载
- 物资管理知识题库-填空题.doc VIP
- Yamaha 雅马哈 乐器音响 PSR-SX600 Owner's Manual (Traditional Chinese) 用户手册.pdf
- 2025年危险性较大工程项目领导带班制度.pdf VIP
- 安徽工程大学【个人简历】简单风格四页精美套装简历-简历模板.docx VIP
- 2024年其他类-化验员-水质化验员考试历年常考点试题带答案.docx VIP
- 中国粮油公司年度经营计划.ppt VIP
- 2024年其他类-化验员-水质化验员考试历年常考点试题带答案.docx VIP
- 2024年其他类-化验员-水质化验员考试历年常考点试题带答案版.docx VIP
- 株洲湘江四桥42米现浇箱梁贝雷支架施工技术方案.doc VIP
- GB50312-2016 综合布线系统工程验收规范.docx VIP
文档评论(0)