(10分)在SQL Server 2008的数据库中存在如下两张关系表:学生表(学号,姓名,性别,身份证号,系所号),学号为主码系所表(系所-考呗网题库移动版
数据库
首页 题库首页在线模考
取消

参考答案暂无
解析:【解题思路】
本题考查的是T-SQL与SQL语句使用的区别,以及索引相关知识,如索引定义,在什么地方建立索引,建立索引的条件等等。
(1)T-SQL即Transact-SQL,是SQL在Microsoft SQL Server上的增强版,它是用来让应用程序与SQL Server沟通的主要语言。T-SQL提供标准SQL的DDL和DML功能,加上延伸的函数、系统预存程序以及程式设计结构(例如IF和WHILE)让程式设计更有弹性。
SQL是集DDL、DML、DCL为一体的标准关系数据库语言。其中DDL数据定义语言用于定义和管理SQL数据库中的所有对象的语言;DML数据操纵语言,SQL中处理数据等操作统称为数据操纵语言。
SQL作为结构化查询语言,是标准的关系型数据库通用的标准语言;T-SQL是在SQL基础上扩展的SQL Server中使用的语言。
(2)索引的知识
索引技术是一种快速数据访问技术,它将一个文件的每个记录在某个或某些领域(或称为属性)上的取值与该记录的物理地址直接联系起来,提供了一种根据记录域的取值快速访问文件记录的机制。索引的使用要恰到好处,其使用原则一般如下:
①经常在查询中作为条件被使用的列,应为其建立索引;
②频繁进行排序或分组(即进行group by或order by操作)的列,应为其建立索引;
③一个列的值域很大时,应为其建立索引;
④如果待排序的列由多个,应在这些列上建立复合索引。
【参考答案】
(1)s-选择 c-选择(*)FROM学生表JOIN系所表ON学生表.系所号=系所表.系所号WHERE系所名LIKE'%电%'性能更好。
原因:T-SQL的代码需要先扫描一遍系所表,然后根据扫描得到的每个记录重新扫描一遍学生表得出结果。使用所写的SQL语句实现同样的功能,将学生表和系所表连接之后按条件过滤,只需要扫描一遍连接之后的表即可。
(2)创建的复合索引对第二条语句的查询效率提高不明显,因为其是复合索引且身份证号排在前面,对查找姓名的查询效率提高不明显,而明显会提高第一条语句的查询效率。

你可能喜欢

A.操作可行性分析
B.经济可行性分析
C.技术可行性分析
D.开发方案可行性分析

A.数据备份
B.数据库重组
C.索引调整
D.建立数据库结构

延伸阅读