第2章节关系数据库语言.ppt

  1. 1、本文档共124页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第2章节关系数据库语言

优化连接查询 (1)过滤操作次序问题 SQL SERVER数据库采用自下而上的顺序来解析WHERE子句, SQL SERVER建议表之间的连接应该写在其他WHERE条件之前。 SELECT a.SNo, SName, Score FROM Student a, SC b, Course c WHERE a.SNo=b.Sno AND b.CNo=c.CNo AND CName= 数学 AND Score60 SELECT a.SNo, SName, Score FROM Student a, SC b, Course c WHERE CName= 数学 AND Score60 AND a.SNo=b.Sno AND b.CNo=c.CNo ???哪种书写方式更好呢? 优化连接查询 (2)书写规则问题 实例 SGA Shared pool Library cache Data Dictionary cache PMON SMON DBWR LGWR CKPT Others 内存 结构 后台 进程 用户 进程 服务器 进程 PGA 用户 进程 服务器 进程 PGA Redo log Buffer cache Database Buffer cache 重做日志文件 数据文件 sql1 sql2 sqln … 数据库原理与设计 SQL语句的命中率越高,共享缓冲区的利用率越高,数据库的性能就越好。 优化策略:制定SQL语句编码标准。 编写完全相同的SQL语句: 语句文本相同 大小写相同 赋值变量相同 ※ SELECT * FROM student WHERE Sno=‘03001’; SELECT * FROM student WHERE Sno=‘03001’; ? 优化连接查询 (2)书写规则问题 数据库原理与设计 2.4.4 集合查询(合并查询) (1)什么是集合(合并)查询 (2)集合(合并)查询使用规则 (3)集合(合并)查询的优劣势分析 数据库原理与设计 (1)什么是集合查询(合并查询) 例:查选修了00001 或00005课程的学生 为了合并多个SELECT语句的查询结果,可以使用集合运算符(set operator)进行合并查询。 其基本语法: SELECT 语句1…… [UNION|UNION ALL| INTERSECT|MINUS] SELECT 语句2…… Select sno from sc where cno=‘00001’ Select sno from sc where cno=‘00005’ UNION SQL Server只支持UNION 和UNION ALL操作,不支持INTERSECT和MINUS 数据库原理与设计 (2)合并查询使用规则: (1)Select 语句必须选择同样数量的列。 (2)相应的列必须具有相同的类型与长度。 Select sno,score from sc where cno=‘00001’ Select sno,score from sc where cno=‘00005’ UNION (3)在合并查询的结果集合中,自动以第一个查询的字段名作为列名,因此,排序只能按照第一个查询的列名或者为序进行排序。 分析一下查询实现哪个更好呢? 例,查询选修了00001号课程或者00005号课程的学生学号 SELECT sno FROM sc WHERE cno=00001 union SELECT sno FROM sc WHERE cno=00005 等价与 SELECT sno FROM sc WHERE cno=00001 or cno=00005 order by sno 分析一下查询实现哪个更好呢? 例,查询雇员表EMP中,工资大于2500 并且岗位为MANAGER SELECT ename,sal,job FROM emp WHERE sal2500 intersect

文档评论(0)

junjun37473 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档