问答题
有两张关系表:
Students(SID,SName,Sex,Dept)
Prizing(SID,PName,Type,PDate)
Students表描述的是学生基本信息.Prizing表描述的是学生获奖信息。
问答题
①若在应用程序中经常使用如下查询语句: SELECT
S.SID,SName,PName,Type FROM Students AS S JOIN Prizing AS P ON S
SID=P.SID 请问能否使用聚集文件提高此查询的性能?并给出原因。 |
【正确答案】
【答案解析】①可以用聚集文件提高此查询性能。因为聚集文件本身存储不同类型表的联系,能够减少表间的连接操作,提高查询性能。
[解析] 本题考查的是优化查询速度的方法等。聚集文件本身存储不同类型表的联系,能够减少表间的连接操作,提高查询性能。而非聚集索引,对于以SNAME首字母排序时有效。
问答题
②为了提高查询性能,数据库管理员在Students表的SName列上建立了一个非聚集索引SName
_ind。如果应用程序使用如下语句查询数据: SELECT*FROM Students WHERE SName
like‘%华’
请问SName_ind索引是否能够提高语句的查询速度,并给出原因。 |
【正确答案】
【答案解析】②此索引不能提高该语句的查询速度。因为该索引是建立在SNAME上的非聚集索引,以SNAME首字母排序,而查询语句却要求查询名字最后一个是“华”的SNAME,还是需要全部扫描students表.因此不能提高该语句的查询速度。