有两张关系表: Students(SID, SName, Sex, Dept) Prizing(SID, PName, Type, PDate) Students表描述的是学生基本信息,Prizing表描述的是学生获奖信息。 ①若在

admin2012-04-09  21

问题 有两张关系表:
   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
   请问能否使用聚集文件提高此查询的性能?并给出原因。
   ②为了提高查询性能,数据库管理员在Students表的SName列上建立了一个非聚集索引SName_ind。如果应用程序使用如下语句查询数据:
   SELECT*  FROM Students WHERE SName like‘%华’
   请问SName_ind索引是否能够提高语句的查询速度,并给出原因。

选项

答案①可以用聚集文件提高此查询性能。因为聚集文件本身存储不同类型表的联系,能够减少表间的连接操作,提高查询性能。 ②此索引不能提高该语句的查询速度。因为该索引是建立在SNAME上的非聚集索引,以SNAME首字母排序,而查询语句却要求查询名字最后一个是“华”的SNAME,还是需要全部扫描students表,因此不能提高该语句的查询速度。

解析
转载请注明原文地址:https://kaotiyun.com/show/qHAZ777K
0

最新回复(0)